
互联网架构
文章平均质量分 93
Jason_LiuMeng
一个小码农
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Nginx+Keepalived+LVS实现高可用架构
1、简介Nginx是一个多进程的高性能反向代理服务器Nginx包含一个master进程,用于接收操作者的指令去管理worker进程,该进程不处理客户端请求Nginx包含多个worker进程(默认1个,可以再config中的worker_processes进行配置),worker进程用于接收客户端的请求,每个worker可以连接多个客户端,多个worker之间由于是进程,所以相互完全没有任何影响。2、网络模型Nginx在Linux下默认采用Epoll模型来实现异步非阻塞3、 Worker配置Ng原创 2021-06-08 18:38:00 · 788 阅读 · 2 评论 -
Docker MySQL主从服务部署
Docker MySQL主从服务部署一、MySQL安装1、镜像搜索下载docker search mysqldocker pull mysql2、部署Master创建master的宿主机映射目录mkdir -p /opt/module/mysql/mysql-master/confmkdir -p /opt/module/mysql/mysql-master/data运行镜像...原创 2019-10-08 18:10:57 · 317 阅读 · 0 评论 -
基于Redis的分布式令牌桶限流器
本文根据Guava RateLimiter令牌桶限流器修改的基于Redis的分布式限流器。令牌桶采用横定速率生成令牌存放入桶中,通过计算获取指定令牌数所需要的等待时间来进行限流。注:其中对于令牌桶的更新需要依赖分布式同步锁:DistributedLock本文采用基于Redis的RedLock来实现,请参见本人另外的一篇文章:基于Redis RedLock的分布式同步锁1、Guava Rate...原创 2018-11-13 12:01:02 · 38497 阅读 · 27 评论 -
记录一个Vue2.0的手脚架搭建文档
史上最全的Vue2.0如坤手册包含有Vue2.0的环境搭建,Vue2.0的一些常见问题解答原创 2018-05-25 13:41:07 · 327 阅读 · 0 评论 -
Nginx配置实现前端Route路由与后端路由的分离
Windows中Nginx的常用命令: 启动:Nginx根目录下cmd控制台start nginx.exe 停止:Nginx根目录下cmd控制台nginx -s stop 重启:Nginx根目录下cmd控制台nginx -s reload注意:每次修改了Nginx.conf文件之后都必须要重启Nginx服务下面是前后端路由分离的nginx.conf的配置,文件路径:nginx安装目录/conf原创 2017-09-01 15:06:47 · 16543 阅读 · 0 评论 -
Nginx负载均衡入门Demo
一、 工具 nginx-1.8.0 apache-tomcat-6.0.33二、 目标 实现高性能负载均衡的Tomcat集群: } 三、 步骤 1、首先下载Nginx,要下载稳定版: 2、然后解压两个Tomcat,分别命名为apache-tomcat-6.0.33-1和apache-tomcat-6.0.33-2: 3、然后修改这两个Tomcat的启动端原创 2017-08-17 11:38:44 · 789 阅读 · 0 评论 -
互联网架构(9):Socket网络通信编程--Netty应用
四、Socket网络通信编程–Netty实践1、数据通信一般在项目中我们该如何去使用Netty呢?大体上对于一些参数配置都是根据服务器性能决定的。这个不是最主要的。我们需要考虑的问题是两台机器(甚至多台)使用Netty怎样进行通信,一般分为三种:1 第一种,使用长连接通道不断开的形式进行通信,也就是服务器和客户端一直处于开启状态,如果服务器性能足够好,并且我们的客户端数量也比较少的情况下,还是可以原创 2017-06-01 16:47:40 · 698 阅读 · 0 评论 -
互联网架构(8):Socket网络通信编程--Netty
三、Socket网络通信编程–NettyNetty是一个提供异步事件驱动的网络应用框架,用以快速开发高性能、高可靠性的网络服务器和客户端程序。换句话说,Netty是一个NIO框架,使用它可以简单快速地开发网络应用程序,比如客户端和服务端的协议。Netty大大简化了网络程序的开发过程比如TCP和UDP的 Socket的开发。“快速和简单”并不意味着应用程序会有难维护和性能低的问题,Netty是一个精心原创 2017-05-24 13:53:43 · 1131 阅读 · 0 评论 -
互联网架构(7):Socket网络通信编程--BIO/NIO/AIO
二、Socket网络通信编程1、IO(BIO阻塞IO)1.1基本概念Socket又称”套接字”,应用程序通常通过“套接字”向网络发出请求或者应答网络请求。Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是简历网络连接时使用的。在连接成功是,应用程序两端都会产生一个Socket实例,操作这个实例完成所需的会话。对于一个网络连接来说,原创 2017-05-23 16:29:27 · 669 阅读 · 0 评论 -
互联网架构(6):并发编程--Disruptor并发框架
6 Disruptor并发框架简介Martin Fowler在自己网站上写了一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金融交易平台,它能够以很低的延迟产生大量交易。这个系统是建立在JVM平台上,其核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单。业务逻辑处理器完全是运行在内存中,使用事件源驱动方式。业务逻辑处理器的核心是Disruptor。Disruptor它是一个原创 2017-05-23 15:47:18 · 3839 阅读 · 0 评论 -
互联网架构(5):并发编程--锁
5 锁java多线程里面,我们知道可以使用synchronized关键字来实现线程间的同步互斥工作,那么其实还有一个更优秀的机制去完成这个“同步互斥”工作,他就是Lock对象,典型的有重入锁和读写锁。他们具有比synchronized更为强大的功能,并且有嗅探锁定、多路分支等功能。(1)ReentrantLock重入锁重入锁,在需要进行同步的代码部分加上锁定,但是一定不要忘记最后一定要释放锁定,不然原创 2017-05-23 15:40:48 · 363 阅读 · 0 评论 -
互联网架构(4):并发编程--Concurrent.util工具类
4 Concurrent.util工具类详解(1)CyclicBarrier使用:假设有一个场景:每一个线程代表一个跑步运动员,当运动员都准备好后,才一起出发,只要有一个人没有准备好,大家都等待。CyclicBarrier barrier = new CyclicBarrier(int count); count为计数器,每有一个线程调用barrier.await();则计数器减1,当计数器减为0的原创 2017-05-23 15:30:25 · 382 阅读 · 0 评论 -
互联网架构(2):并发编程--并发编程的设计模式
7 并发编程的设计模式(1)Future模式该模式主要用于并行处理多个互不影响的请求,最后将结果汇总的业务。可以对多个不同的请求启动多个不同的线程,然后在线程中独立去获取想要的结果,等到真正需要使用该数据的时候才会获取到真正的结果。下面是模拟的Future模式,(JDK已经提供了一些Future实现类,直接使用即可)FutureClient.java/** * 核心处理类,对请求启用独立线程原创 2017-05-23 15:18:33 · 397 阅读 · 0 评论 -
互联网架构(1):并发编程--多线程基础
一、并发编程1 synchronized同步修饰关键字(1) 修饰非静态方法(对象级)(2) 修饰静态方法(类级)(3) 方法块: synchronized(this){} (对象级)synchronized(Class){} (类级)synchronized(对象级){} (类级)2 volatile修饰关键字,使被修饰的变量在多线程中可见,能够使被修饰的变量每次使用的都是那一瞬间的最原创 2017-05-23 11:19:48 · 840 阅读 · 0 评论