首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
CCUP
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
39
文章 38
沸点 1
赞
39
返回
|
搜索文章
赞
文章( 38 )
沸点( 1 )
去哪儿网架构演进之路:微服务的尽头原来是DDD……
业务架构的演变路径,侧面展现所在互联网企业的演变路径。每一种架构无关好坏,选择与否,只取决于是否适合当下及可预见的未来。本次分享主要介绍从服务化到平台化的过程,即从服务细粒度到领域能力沉淀的演进过程。
从一笔金币充值去思考分布式事务
考虑支付重构的时候,自然想到原本属于一个本地事务中的处理,现在要跨应用了要怎么处理。拿充值订单举个栗子吧,假设:原本订单模块和账户模块是放在一起的,现在需要做服务拆分,拆分成订单服务,账户服务。原本收到充值回调后,可以将修改订单状态和增加金币放在一个mysql事务中完成的,但是…
从一个电商平台的库存同步谈性能优化和方案落地
下面的案例来自笔者的实际工作经历,涉及到的系统是笔者负责开发和维护的,一个国外的电商平台。 如果你对电商系统有所了解,将有助于你理解下面提到的业务。 如果你没有相关的知识背景,也没有关系,我会尽可能简化地将业务讲给你,并且只要求你理解关键概念即可。 事情的起因是平台的某位高级主…
JVM+GC 面试题
首先,Eden 区满的时候回出发第一次 GC,把存活的对象拷贝到 SurvivorFrom 区,当 Eden 区再次出发 GC 的时候会扫描 Eden 区和 From 区,对这两个区域进行垃圾回收。 经过这次回收后还存活的对象,则直接复制到 To 区,同时将这些对象的年龄+1。…
Map之HashMap源码浅析-扩容
初始化时,为一个Node类型的数组,每个元素为一组键值对。 从静态类中的next可以看出,Node为链表结构。即Node数组的每个元素(也可称为桶)都可存储一个链表。 1. 源码跟踪 示例:创建一个hashmap,放入3个键值对。 新建一个HashMap,默认大小为16,且都为…
CAS导致的ABA问题及解决
CAS,比较并交换(Compare-and-Swap,CAS),如果期望值和主内存值一样,则交换要更新的值,也称乐观锁。 如线程甲从主内存中拷贝了变量A为1,在自己的线程中将副本A改为了10,当线程甲准备把这个变量更新到主内存时,如果主内存A的值不改变(期望值),还是1,那么线…
synchronize早已经没那么笨重
我发现一些同学在网络上有看不少synchronize的文章,可能有些同学没深入了解,只看了部分内容,就急急忙忙认为不能使用它,很笨重,因为是采用操作系统同步互斥信号量来实现的。关于这类的对于synchronize的污点,我打算帮它清洗下。 其实jdk1.6对锁的实现已经引入了大…
如何判断一个元素在亿级数据中是否存在?
需求其实很清晰,只是要判断一个数据是否存在即可。 但这里有一个比较重要的前提:非常庞大的数据。 我想大多数想到的都是用 HashMap 来存放数据,因为它的写入查询的效率都比较高。 写入和判断元素是否存在都有对应的 API,所以实现起来也比较简单。 为了方便调试加入了 GC 日…
Qunar全链路跟踪及Debug
QTracer是Qunar内部开发维护的一套分布式追踪系统;它会为每个请求生成一个全局唯一的TraceID,然后将TraceID不断传递给下游系统;同时,在每个系统中,它都会记录各个系统里的各项操作;最后,通过TraceID将各个系统里记录的操作整合起来,还原出一个请求在整个分布式系统中的详细执行流程。
基于SpringBoot的后台管理系统(数据源配置、日志记录配置及实现(重点))(三)
1、本项目临摹自abel533的Guns,他的项目 fork 自 stylefeng 的 Guns!开源的世界真好,可以学到很多知识。 2、版权归原作者所有,自己只是学习使用。跟着大佬的思路,希望自己也能变成大佬。gogogo》。。 3、目前只是一个后台模块,希望自己技能增强到…
下一页
关注了
109
关注者
4
收藏集
25
关注标签
39
加入于
2017-01-04