一、 public class Server { public static void main(String[] args) throws Exception { //1 创建线两个程组 //一个是用于处理服务器端接收客户端连接的 //一个是进行网络通信的(网络读写的) EventLoopGrou Read More
posted @ 2022-02-23 16:34 xujf Views(48) Comments(0) Diggs(0) Edit
一、 public class Server { //线程池 private ExecutorService executorService; //线程组 private AsynchronousChannelGroup threadGroup; //服务器通道 public Asynchronou Read More
posted @ 2022-02-23 13:51 xujf Views(26) Comments(0) Diggs(0) Edit
一、编写server端 1 public class Server implements Runnable{ 2 //1 多路复用器(管理所有的通道) 3 private Selector seletor; 4 //2 建立缓冲区 5 private ByteBuffer readBuf = Byt Read More
posted @ 2022-02-23 13:46 xujf Views(43) Comments(0) Diggs(0) Edit
同步和异步,同步指的是应用程序会直接参与IO读写操作,用阻塞或者长轮询的方式来获取数据。异步指的是IO交给操作系统,完成IO读写后通知程序,程序直接拿走数据。 BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会 Read More
posted @ 2022-02-23 13:36 xujf Views(63) Comments(0) Diggs(0) Edit
主要功能分析: Ribbon的负载均衡主要通过LoadBalancerClient来实现的,而LoadBalanceClient具体交给了ILoadBalancer来处理,ILoadBalancer通过配置IRule,IPing等,向EurekaClient获取注册列表的信息,默认每10秒向Eure Read More
posted @ 2022-02-21 18:08 xujf Views(36) Comments(0) Diggs(0) Edit
在com.netfix.discovery包下有一个DiscoveryClient类中包含注册方法,DiscoveryClient实现了EurekaClient接口,并且是一个单例模式,而EurekaClient继承了LookupService接口。 DiscoveryClient类中有一个服务注册 Read More
posted @ 2022-02-17 18:17 xujf Views(41) Comments(0) Diggs(0) Edit
一、极简xml版本(mybatis还可以通过注解来实现) pom配置: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> < Read More
posted @ 2021-06-24 13:16 xujf Views(90) Comments(0) Diggs(0) Edit
一、代码 1.pom.xml <!--spring session--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> Read More
posted @ 2021-06-03 16:38 xujf Views(723) Comments(0) Diggs(0) Edit
一、分类 1.从锁的公平性来区分,可以分为公平锁和非公平锁;2.从锁是否可重复获取可分为可重入锁和不可重入锁;3.从资源已被锁定,线程是否阻塞可以分为自旋锁;4.从线程是否对资源加锁可以分为悲观锁和乐观锁;5.从那个多个线程能否获取同一把锁分为共享锁 和 排他锁。6.多Jvm环境下多线程操作多个资源 Read More
posted @ 2021-06-01 18:24 xujf Views(475) Comments(0) Diggs(0) Edit
一、日志框架和选择 日志门面(日志的抽象层)日志实现 JCL(Jakarta Commons Logging)(2014年后不再维护)jboss-logging (不适合企业项目开发使用)SLF4J(Simple Logging Facade for java) Log4jJUL(java.util Read More
posted @ 2021-04-23 18:53 xujf Views(821) Comments(0) Diggs(0) Edit