- 博客(5)
- 资源 (2)
- 收藏
- 关注
原创 软件架构-zookeeper集群部署与快速入门
目前的公司是使用的阿里内部的dubbo,也就是EDAS,里面用了阿里自己的EDAS服务,如果是使用过dubbo的老铁,应该知道zookeeper,zookeeper在大数据和RPC通信上应用比较管饭。不管用过zookeeper没有,这次主要是介绍下zookeeper和集群的部署。这个必须要实际操作下,才能理解的深刻。 源码:https://github.com/limingios/netFuture/ 【zookeeper】 (一)介绍zookeeper 历史 Zookeeper 最早起源于雅.
2021-03-29 03:57:31 339
原创 软件架构-分布式系列并发编程atomic&collections
在java中提供了一种对于原子操作的类,Atomic的包名为java.util.concurrent.atomic。这个包里面提供了一组原子变量的操作类,这些类可以保证在多线程环境下,当某个线程在执行atomic的方法时,不会被其他线程打断,而别的线程就像自旋锁一样,一直等到该方法执行完成,才由JVM从等待队列中选择一个线程执行。 Atomic CAS 能够弄懂atomic包下这些原子操作类的实现原理,就要先明白什么是CAS操作。 1.CAS指的是现代CPU广泛支持的一种对内存中的共享数据进行.
2021-03-22 09:04:28 190 1
原创 软件架构-分布式系列并发编程Lock锁和Tools限制
虽然多线程编程极大地提高了效率,但是也会带来一定的隐患。比如说两个线程同时往一个数据库表中插入不重复的数据,就可能会导致数据库中插入了相同的数据。今天我们就来一起讨论下线程安全问题,以及Java中提供了什么机制来解决线程安全问题。源码:https://github.com/limingios/netFuture/blob/master/JSR133中文版.pdf synchronized & Volatile JSR133 http://www.cs.umd.edu/~pugh/java/m.
2021-03-15 16:58:07 221
原创 软件架构-分布式系列并发编程
说说JMM,线程,线程池。一切都为了分布式而行动! JMM 理解下面的图 java的文件,需要进行编译,通过java编译编程class文件,class文件变成字节码,装载到类装载器中,通过类装载器进行执行,执行的过程中的一个模型就是下面这个图。 特性 1.可见性 可见性是指当一个线程修改了共享变量后,其他线程能够立即得知这个修改。通过之前对synchronzed内存语义进行了分析,当线程获取锁时会从主内存中获取共享变量的最新值,释放锁的时候会将共享变量同步到主内存中。从而,synch.
2021-03-08 11:40:31 210 1
原创 『互联网架构』软件架构-分布式之大型网站的演变过程
项目都是从单一的应用,到分布式应用,到流式的基栈,这样的思想。 单体应用 app应用,db数据库,server服务都在同一台机器上 集群应用 随着业务量的增大,一台服务器,需要进行拆分到3台服务器。 server服务和app在一台机器上。2台应用的,一台数据库的。 在真正的开发过程中,由一个应用变成多个了会发生什么样的问题? 1.session集群问题 2.数据一致性问题 3.数据瓶颈(一旦流量上来了,虽然应用做了集群,但是数据库没有做集群,还是一个主库),这时候要考虑主从数据库。 .
2021-03-01 16:29:16 120
docker-machine v0.14.0
2018-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人