java
文章平均质量分 76
zhaorui2017
成功的道路上总有曲折,努力去克服,越辛苦越幸运
展开
-
Java虚拟机的内存结构
我们都知道虚拟机的内存划分了多个区域,并不是一张大饼。那么为什么要划分为多块区域呢,直接搞一块区域,所有用到内存的地方都往这块区域里扔不就行了,岂不痛快。是的,如果不进行区域划分,扔的时候确实痛快,可用的时候再去找怎么办呢,这就引入了第一个问题,分类管理,类似于衣柜,系统磁盘等等,为了方便查找,我们会进行分区分类。另外如果不进行分区,内存用尽了怎么办呢?这里就引入了内存划分的第二个原因,就是为了方原创 2017-09-14 12:31:16 · 849 阅读 · 0 评论 -
Spring AOP + Redis缓存数据库查询
应用场景我们希望能够将数据库查询结果缓存到Redis中,这样在第二次做同样的查询时便可以直接从redis取结果,从而减少数据库读写次数。需要解决的问题操作缓存的代码写在哪?必须要做到与业务逻辑代码完全分离。如何避免脏读? 从缓存中读出的数据必须与数据库中的数据一致。如何为一个数据库查询结果生成一个唯一的标识?即通过该标识(Redis中为Key),能唯一确定一个查询结果,同一转载 2017-12-19 16:01:48 · 651 阅读 · 0 评论 -
浅谈分布式服务协调技术 Zookeeper
Google的三篇论文影响了很多很多人,也影响了很多很多系统。这三篇论文一直是分布式领域传阅的经典。根据MapReduce,于是我们有了Hadoop;根据GFS,于是我们有了HDFS;根据BigTable,于是我们有了HBase。而在这三篇论文里都提及Google的一个Lock Service —— Chubby,哦,于是我们有了Zookeeper。随着大数据的火热,Hxx们已经变得耳转载 2017-11-06 12:24:01 · 603 阅读 · 0 评论 -
微服务应用容器化场景中常见问题总结
简介云原生技术栈是下一代应用转型的必然选择,它包含了微服务架构,DevOps和容器技术。对于微服务架构来说,应用是“第一公民”,他逐渐蚕食原来底层软件或者硬件的功能,例如服务注册与发现以及负载均衡;而对于容器平台来说,容器是“第一公民”,他提供了容器注册与发现和负载均衡,同时容器技术将应用和外面的世界做了隔离,这样很多应用运行的假设就会失效。那当微服务应用运行在容器中的时候,我们会遇到哪些转载 2017-11-03 11:42:48 · 602 阅读 · 0 评论 -
热门开源项目:Guns-后台管理系统
Guns基于SpringBoot,致力于做更简洁的后台管理系统,完美整合springmvc + shiro + mybatis-plus + beetl!Guns项目代码简洁,注释丰富,上手容易,同时Guns包含许多基础模块(用户管理,角色管理,部门管理,字典管理等10个模块),可以直接作为一个后台管理系统的脚手架。Guns v3.0新增rest api服务,提供对接服务端接口原创 2017-10-16 11:59:31 · 22472 阅读 · 2 评论 -
开源中国颁发证书:GVP-码云最有价值开源项目(roncoo-pay)
roncoo-pay (龙果支付系统)roncoo-pay是国内首款开源的互联网支付系统,其核心目标是汇聚所有主流支付渠道,打造一款轻量、便捷、易用,且集支付、资金对账、资金清结算于一体的支付系统,满足互联网业务系统的收款和业务资金管理需求。厉害了,龙果!《龙果开源支付系统》再次获得广大码友及开源中国码云的认同,被评为:GVP-码云最有价值开源项目(roncoo-pay原创 2017-10-13 10:23:48 · 3494 阅读 · 0 评论 -
架构师之路-一张图认识jvm内存
从无到有搭建中小型互联网公司后台服务架构与运维架构 http://www.roncoo.com/course/view/ae1dbb70496349d3a8899b6c68f7d10b原创 2017-10-11 10:43:07 · 835 阅读 · 0 评论 -
SpringCloudStream 构建消息驱动的微服务框架
前言Spring Cloud Stream,用精简的语言概括,他本质上其实就是让开发人员使用消息中间件变得简单。他基于Spring Integration并利用Spring Boot提供了自动配置,提供了极为方便的消息中间件使用体验。看到这里会有人认 为这个开源项目没有什么了不起,基于这个点的开源包有很多,甚至自己已经熟知某种中间件的编码语法何苦重复造轮子, 我就是这当中的一员转载 2017-09-21 10:40:33 · 3884 阅读 · 0 评论 -
Java虚拟机自动内存管理
生活规律告诉我们,在享受便利的同时一般都会付出巨大的代价,如果你在享受了便利的同时,还没有为此付出代价,不是说明没有,只是还没到付出的时候。试问,有哪个Java系统架构师不懂Java虚拟机?纵观Java程序员的发展历程,又有多少人是卡在了Java虚拟机之上。所以如果你还没有感觉到为此付出代价,说明你已经Java虚拟机的糖衣炮弹所击中,且被毒害之深。Java的自动内存管理就是这样,像毒药一样,一旦上原创 2017-09-20 14:35:38 · 437 阅读 · 0 评论 -
什么是微服务架构?
什么是微服务?微服务(Microservices Architecture)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。单体架构(Monolithic Architecture )企业级的应用一般都会面临各转载 2017-09-18 11:01:36 · 1850 阅读 · 0 评论 -
SpringBoot+Mybatis事务管理
一、使用场景 在使用事务管理前,有必要先了解下应用场景。如实际过程中一个购买操作包含多个执行过程:查询库存、下单、更新库存,实际操作时,由于高并发存在,可能到下单结束时,更新库存出错,那本次购买操作就是失败的,其下单结果应该被回滚。这种情况就需要引入事务控制,保证整个操作的有效性。二、配置方法(1)配置applicationContext.xml bean id="t转载 2018-01-05 16:18:05 · 3492 阅读 · 1 评论