摘要: Istio = 微服务框架 + 服务治理 Istio 大幅降低微服务架构下应用程序的开发难度,势必极大的推动微服务的普及。个人乐观估计,随着isito的成熟,微服务开发领域将迎来一次颠覆性的变革。后面我们在介绍Istio的架构和功能模块时, 大家可以了解到Istio是如何做到这些的。 Servcie 阅读全文
posted @ 2018-03-02 17:56 stanljj 阅读(949) 评论(0) 推荐(0) 编辑
摘要: 1、dubbo只是专注于服务之间的治理,配置中心、分布式跟踪等这些内容都需要自己集成 2、dubbo核心功能: a、远程通讯 b、集群容错 c、自动发现 Dubbo SpringCloud 服务注册中心 Zookeeper SpringCloud Netflix Eureka 服务调用方式 RPC 阅读全文
posted @ 2018-03-02 17:56 stanljj 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: 云原生包括DevOps、持续交付、微服务、敏捷基础设施、康威定律等,以及根据商业能力对公司进行重组的能力,既包含技术、也包含管理,可以说是一系列云技术和企业管理方法的集合,通过实践及与其他工具相结合更好地帮助用户实现数字化转型。 阅读全文
posted @ 2018-03-02 17:55 stanljj 阅读(151) 评论(0) 推荐(0) 编辑
摘要: JVM堆相关知识 为什么先说JVM堆? JVM的堆是Java对象的活动空间,程序中的类的对象从中分配空间,其存储着正在运行着的应用程序用到的所有对象。这些对象的建立方式就是那些new一类的操作,当对象无用后,是GC来负责这个无用的对象(地球人都知道)。 JVM堆 (1) 新域:存储所有新成生的对象 阅读全文
posted @ 2018-03-02 17:54 stanljj 阅读(271) 评论(0) 推荐(0) 编辑
摘要: Netty是一个高性能、异步事件驱动的NIO框架,基于JAVA NIO提供的API实现 ChannelEvent 先说这个ChannelEvent,因为Netty是基于事件驱动的,就是我们上文提到的,发生什么事,就通知"有关部门"。所以,不难理解,我们自己的业务代码中,一定有跟这些事件相关的处理。在 阅读全文
posted @ 2018-03-02 17:53 stanljj 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 首先说Java编程语言,它是一门高级编程语言,具体由谁何时创建的,读者可以到网上查找相关资料,这里就不再赘述。那么,谈到Java就不得不谈谈JVM、JRE和JDK三者间的区别和联系。 JVM:英文全称Java Virtual Machine,字面意思“Java虚拟机”,简单来说就是一个软件。一个什么 阅读全文
posted @ 2018-03-02 17:50 stanljj 阅读(531) 评论(0) 推荐(0) 编辑
摘要: 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。 4.1 Zookeeper保证CP 当向注册中心查询服务列表时 阅读全文
posted @ 2018-03-02 17:49 stanljj 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 在分布式网络系统中,缓存更是无处不在:(1)对静态页面的缓存;(2)服务端对某些请求数据的缓存(包括本地缓存和分布式缓存);(3)客户端对服务器端数据的缓存,例如我们的头像等信息; 使用缓存带来的问题: 缓存何时写入? 缓存如何失效? 缓存和DB的一致性如何保证? 多级缓存有什么最佳实践? 如何避免 阅读全文
posted @ 2018-03-02 17:49 stanljj 阅读(156) 评论(0) 推荐(0) 编辑
摘要: Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的加载机制。 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括了:加载(Loading)、验证(Verification)、准备(P 阅读全文
posted @ 2018-03-02 17:48 stanljj 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 在数据结构中,堆和栈可以说是两种最基础的数据结构,而Java中的栈内存空间和堆内存空间有什么异同,以及和数据结构中的堆栈有何关系? 一、Java 堆存储空间 堆内存(堆存储空间)会在Java运行时分配给对象(Object)或者JRE的类。只要我们创建了一个对象,那么在堆中肯定会分配一块存储空间给这个 阅读全文
posted @ 2018-03-02 17:46 stanljj 阅读(211) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal是用来维护线程中的变量不被其他线程干扰而出现的一个结构,内部包含一个ThreadLocalMap类,该类为Thread类的一个局部变量,该Map存储的key为ThreadLocal对象自身,value为我们要存储的对象,这样一来,在不同线程中,持有的其实都是当前线程的变量副本, 阅读全文
posted @ 2018-03-02 17:44 stanljj 阅读(139) 评论(0) 推荐(0) 编辑
摘要: HashMap基于hashing原理,我们通过put()和get()方法储存和获取对象。当我们将键值对传递给put()方法时,它调用键对象的hashCode()方法来计算hashcode,让后找到bucket位置来储存值对象。当获取对象时,通过键对象的equals()方法找到正确的键值对,然后返回值 阅读全文
posted @ 2018-03-02 17:34 stanljj 阅读(341) 评论(0) 推荐(0) 编辑
摘要: Redis 存储的五种 字符串类型:string 一个String类型的value最大可以存储512M String是最常用的一种数据类型,普通的key/value存储. 散列类型: hash 键值对个数最多为2^32-1个,也就是4294967295个。 类似于表记录的存储 页面视图所需数据的存储 阅读全文
posted @ 2018-03-02 17:23 stanljj 阅读(151) 评论(0) 推荐(0) 编辑
摘要: maven-dependency-plugin最大的用途是帮助分析项目依赖,dependency:list能够列出项目最终解析到的依赖列表,dependency:tree能进一步的描绘项目依赖树,dependency:analyze可以告诉你项目依赖潜在的问题,如果你有直接使用到的却未声明的依赖,该 阅读全文
posted @ 2018-03-02 17:15 stanljj 阅读(127) 评论(0) 推荐(0) 编辑
摘要: ① 为查询缓存优化查询 ② EXPLAIN 我们的SELECT查询(可以查看执行的行数) ③ 当只要一行数据时使用LIMIT 1 ④ 为搜索字段建立索引 ⑤ 在Join表的时候使用相当类型的列,并将其索引 ⑥ 千万不要 ORDER BY RAND () ⑦ 避免SELECT * ⑧ 永远为每张表设置 阅读全文
posted @ 2018-03-02 17:13 stanljj 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 读写分离:简单的说是把对数据库读和写的操作分开对应不同的数据库服务器,这样能有效地减轻数据库压力,也能减轻io压力。主数据库提供写操作,从数据库提供读操作,其实在很多系统中,主要是读的操作。当主数据库进行写操作时,数据要同步到从的数据库,这样才能有效保证数据库完整性。 分库分表: 水平分区:分表 垂 阅读全文
posted @ 2018-03-02 16:50 stanljj 阅读(1338) 评论(0) 推荐(0) 编辑
摘要: 和慧眼报警录像、报警图片、报警信息: 报警信息 ads 报警信息入库 一定时间后会失效 自动删除数据库中的数据 报警录像 报警图片 mrs 录像以文件方式上传到云存储 图片也存到云存储上 和慧眼分布式: 报警库并发量太大:存到数据库中 数据库并发导致 cpu过高 查询事务过慢 innodb_thre 阅读全文
posted @ 2018-03-02 16:37 stanljj 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 1、视频格式封装——H264 H264结构中,一个视频图像编码后的数据叫做一帧,一帧由一个片(slice)或多个片组成,一个片由一个或多个宏块(MB)组成,一个宏块由16x16的yuv数据组成。宏块作为H264编码的基本单位。 2、hls之m3u8、ts流格式详解 HLS,Http Live Str 阅读全文
posted @ 2018-03-02 16:34 stanljj 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 异步处理 应用解耦 流量削峰 系统架构 Broker:它提供一种传输服务,它的角色就是维护一条从生产者到消费者的路线,保证数据能按照指定的方式进行传输, Exchange:消息交换机,它指定消息按什么规则,路由到哪个队列。 Queue:消息的载体,每个消息都会被投到一个或多个队列。 Binding: 阅读全文
posted @ 2018-03-02 16:18 stanljj 阅读(1245) 评论(0) 推荐(0) 编辑
摘要: 从数据结构角度 1、 B+树索引(O(log(n))) 2、 hash索引 3、 FULLTEXT索引 4、 R-Tree索引 从物理存储角度 1、 聚集索引 2、 非聚集索引 从逻辑角度 1、 主键索引:主键索引是一种特殊的唯一索引,不允许有空值 2、 普通索引或者单列索引 3、 多列索引(复合索 阅读全文
posted @ 2018-03-02 14:24 stanljj 阅读(3966) 评论(0) 推荐(0) 编辑