分布式架构
u18256007842
我等虽是绿林,但也知家国大义
展开
-
全局唯一ID生成方式
全局id的使用场景 在一个应用系统中,我们可能需要使用到一个不管任何时间,任何机器上都必须是唯一的一串数字标识,用来辨别唯一的一条数据。例如订单系统中的订单必须是唯一的不能重复,数据库的分库分表中存的数据也需要唯一标识来找到对应的数据,还有其他的一些要求全局唯一的场景都是非常重要的。还有一些场景不仅需要数据符合全局唯一,还需要顺序或趋势递增、信息安全等。 UUID生成器 UUID是指在一台机器上生...原创 2018-12-19 18:05:12 · 965 阅读 · 0 评论 -
优雅停机
最近我们公司有一个优雅停机的需求,正好我也参与其中,于是就顺便了解了一些原理。什么是优雅停机,字面的意思就是优雅的停机,如何优雅的停机呢?首先我们要把停机前接受的请求都处理掉吧,光处理请求还不行,你还得不让新的请求进来(引流挡板)。 我看网上写的优雅停机大部分都是使用showdownhook()钩子来实现停机前的处理,也就是如下的代码: /** * 优雅停机处理方式 * **/ publi...原创 2018-12-29 18:30:06 · 1932 阅读 · 1 评论 -
初学MongoDB
什么是MongoDB 最近在学习MongoDB,它是目前最受欢迎的nosql数据库,nosql的意思是not only SQL,是非关系型数据库,没有复杂的SQL查询语言,没有事物支持(听说MongoDB 4.*已经支持事物了)没有固定的表结构,速度快。MongoDB:是一个数据库 ,高性能、无模式、文档性,目前nosql中最热门的数据库,开源产品,基于c++开发。是nosql数据库中功能最丰富,...原创 2019-01-24 17:26:55 · 142 阅读 · 0 评论 -
手写RPC框架
概念 什么是RPC,remote produce call 远程过程调用,也就是在分布式项目中服务调用方调用远程服务就像调用本地服务一样,透明化调用。实现这个功能的技术目前很多,有Java的rmi、http调用、protobuf、dubbo等。 实现方式 服务提供方首先会往注册中心注册本地提供的服务; 服务调用方会从服务注册中心获取服务提供方的服务信息; 调用方发起一个服务,并获取一个动态代理类...原创 2019-02-04 22:34:02 · 214 阅读 · 0 评论 -
nginx学习篇(一)浅谈内部核心架构
一、什么是nginx nginx是一款免费的、开源的、高性能的HTTP服务器和反向代理服务器,在我们工作中主要用在这三个方向: 静态服务器 反向代理 负载均衡 当然还有一些其它的功能(如灰度分流…)这篇就不细究了,会在后面的章节谈及。 nginx可以承受每秒1万次的请求量,而它之所以能接受这么多的请求是因为它的架构模式决定的。它的设计不像其它服务器那样使用线程处理请求,而是利用的异步事件驱动,...原创 2019-04-13 13:07:47 · 332 阅读 · 0 评论