Future Code

个人博客

Spring Cloud

Spring Cloud Eureka(服务治理):服务消费者、服务提供者、注册中心; 默认开启自我保护机制:某时刻某一个微服务不可用了, Eureka不会立刻清理,依旧会对该微服务的信息进行保存,属于CAP里面的AP分支;可能属于网络阻塞,假死状态;可关闭默认保护机制; Zuul:网关服务,用于处理前台请求的负载请求、以及鉴权;基于IO阻塞式的servlet; Ribbon:用于负载后......

Dubbo

Dubbo RPC入门 两端建立Socket连接 携带方法参数与方法名字 远程执行方法 计算出结果输入Socket流 Socket连接关闭 分析: 怎样建立Socket连接和保存更有效?(Netty) 传输的字节数怎样性价比更高?(序列化) 出现事务方法怎么保证数据一致性?() 怎么样高效的调用大量不同的方法?(负载均衡) 由于网络延迟等原因,导致返回结果丢失怎么办?(消息重传) 实......

RocketMq

...

RabbitMq

...

zookeeper

Zookeeper zk使用场景 分布式协调:这个其实是zk很经典的一个用法,简单来说,就好比,你A系统发送个请求到mq,然后B消息消费之后处理了。那A系统如何知道B系统的处理结果?用zk就可以实现分布式系统之间的协调工作。A系统发送请求之后可以在zk上对某个节点的值注册个监听器,一旦B系统处理完了就修改zk那个节点的值,A立马就可以收到通知,完美解决。 分布式锁:对某一个数据连续发......

Git 开发流操作

Git 开发流操作 把有项目代码的文件设置成 Git 仓库来管理: git init 查看当前分支提交操作记录(n4: 就近的4次记录): git log [–oneline] [–all] [-n4] [–graph] 查看分支 git branch -v 拉取远程分支 git fetch 创建新临时分支,基于何处创建分支: git checkout -b temp [......
git

MySQL

MySQL 事务 隔离级别 脏读 不可重复读 幻读 READ_UNCOMMITTED Yes Yes Yes READ_COMMITTED(RC) No Yes Yes REPEATABLE_READ (RR) No No Yes ISOLATION_SERIALIZABLE No No No 脏读:当前事务(A)中可以读到其他事务(B)未提交的数据(脏数据)......

Jedis线程安全

Jedis Jedis类中有RedisInputStream和RedisOutputStream两个属性,而发送命令和获取返回值都是使用这两个成员变量,显然,这很容易引发多线程问题。测试代码如下: 123456789101112131415161718public class BadConcurrentJedisTest { private static final Exec......

Java动态代理

Jdk 动态代理 动态代理:是使用反射和字节码的技术,在运行期创建指定接口或类的子类(动态代理)以及其实例对象的技术,通过这个技术可以无侵入性的为代码进行增强; Java源文件(.java) -> Java字节码(.class) -> Class对象 -> 实例对象 动态代理(内存生成) -> Java字节码(.class) -> Class对象 ->......

系统并发锁实现

Jvm 锁 synchronized 通过synchronized关键字修饰方法或者代码块,可以达到保证共享变量的线程安全问题。 synchronized关键字,javac在编译时,会生成对应的monitorenter和monitorexit指令分别对应synchronized同步块的进入和退出,有两个monitorexit指令的原因是为了保证抛异常的情况下也能释放锁,所以javac......