开发总结
未读一、标题123456# 这是一级标题## 这是二级标题### 这是三级标题#### 这是四级标题##### 这是五级标题###### 这是六级标题
例子:这是一级标题这是二级标题这是三级标题这是四级标题这是五级标题这是六级标题二、字体1234*这是倾斜的文字***这是加粗的文字*****这是斜体加粗的文字***~~这是加删除线的文字~~
例子:这是倾斜的文字这是加粗的文字这是斜体加粗的文字这是加删除线的文字
三、引用123> 这是引用的内容>> 这是引用的内容>>>>>>>>>> 这是引用的内容
例子:
这是引用的内容
这是引用的内容
这是引用的内容
四、分割线1234--- ('-'或者'*'大于等于3个以上都可以)----********
例子:
五、图片1234图片alt就是显示在图片下面的文字,相当于对图片内容的解释。图片title是 ...
一、存在问题
同一台Nacos服务多个开发人员在本地开发,就会出现一个问题:也就是你本来想在本地调试你修改的代码,发现服务调到别的同事的服务上去了,导致调试很麻烦。例如:有甲和乙两个开发人员,分别启动了 A1、A2和B1、B2 服务,然后 甲就有可能调用调 B1 服务上,我预期的是甲调用在 A1 服务上 优先使用同IP服务(本地服务优先调用)
二、原生负载策略
对于原生子自带的负载均衡有以下几种,想要自定义负载均衡逻辑只需修改getInstanceResponse和getClusterinstanceResponse方法
负载均衡器
实现
RandomLoadBalancer
基于随机访问的负载均衡策略随机地从候选服务实例中选择一个实例来处理请求
NacosLoadBalancer
基于Nacos权重的负载均衡策略:根据服务实例的权重来决定请求的分配比例。权重越高的实例将获得更多的请求
RoundRobinLoadBalancer
基于轮询的负载均衡策略按顺序轮询每一个实例
三、解决方案
区分开发环境(优先走本地IP)和生产环境(集群优先策略)走不同 ...
一、简介
Stream流是Java 8中的一个新特性,它提供了一种处理集合和数组的方式。Stream流可以让我们以一种更加简洁、高效、可读性更强的方式来处理数据。Stream流可以用于过滤、映射、排序、聚合等操作,它可以让我们避免使用循环和条件语句来处理数据,从而让代码更加简洁易懂
二、流的分类stream(顺序流)
顺序流是一种单线程的流,它按照数据流的顺序依次处理每个元素,每个元素的处理都必须等待上一个元素的处理完成才能开始
parallelStream(并行流)
并行流是一种多线程的流,它可以将数据分成多个部分并行处理,每个部分都可以在不同的线程中处理,从而提高处理效率
流的分类
方法
特点
顺序流
stream()
顺序流是一种单线程的流,它按照数据流的顺序依次处理每个元素,每个元素的处理都必须等待上一个元素的处理完成才能开始
并行流
parallelStream()
并行流是一种多线程的流,它可以将数据分成多个部分并行处理,每个部分都可以在不同的线程中处理,从而提高处理效率,但可能会影响数据的顺序和一致性。因此在使用并行流时需要注意线程安全和数据一致 ...
一、线程池构建
有参构造:
12345678910/*int corePoolSize - 保留在池中的线程数,即使它们是空闲的,除非设置allowCoreThreadTimeOutint maximumPoolSize – 池中允许的最大线程数long keepAliveTime – 当线程数大于核心时,这是多余的空闲线程在终止前等待新任务的最长时间。TimeUnit unit – keepAliveTime参数的时间单位BlockingQueue<Runnable> workQueue – 用于在执行任务之前保存任务的队列。此队列将仅保存由execute方法提交的Runnable任务。ThreadFactory threadFactory – 执行器创建新线程时使用的工厂(可设置线程前缀)RejectedExecutionHandler handler – 由于达到线程边界和队列容量而阻塞执行时使用的处理程序*/
1234//自定义线程池例子:ThreadPoolExecutor executor = new ThreadPoolExecutor(16, 16, 0 ...
一、关于常用的日志框架:介绍:
java.util.logging:是JDK在1.4版本中引入的Java原生日志框架
log4j:Apache的一个开源项目,可以控制日志信息输送的目的地是控制台、文件、GUI组件等,可以控制每一条日志的输出格式,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。虽然已经停止维护了,但目前绝大部分企业都是用的log4j
logBack:是Log4j的一个改良版本
log4j2:Log4j2已经不仅仅是Log4j的一个升级版本了,它从头到尾都被重写了
性能比较:在这列举一下一些网上其他博文中对它们的性能评测:
可以看到在同步日志模式下, logback的性能是最糟糕的
log4j2的性能无论在同步日志模式还是异步日志模式下都是最佳的,而且相比与其他的日志系统,log4j2采用了disruptor技术丢数据这种情况少,在多线程环境下,性能高于logback等10倍以上;利用jdk1.5并发的特性,减少了死锁的发生;
log4j2优越的性能其原因在于log4j2使用了LMAX,一个无锁的线程间通信库代替了logback和log4j之 ...
一、消息中间件1. 什么是消息中间件?
消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,主要解决异步处理、应用耦合、流量消峰等问题,实现高性能、高可用、可伸缩和最终一致性架构,是大型分布式系统不可缺少的中间件。
2. 消息中间件解决的问题2.1. 异步处理
消息队列提供了异步处理机制,因为很多时候用户并不需要立即响应来处理消息,那么通过这个机制就可以把所有消息放入 MQ 中。例如:某系统发来的数据中包含很多图片信息,如果对其中的信息都进行保存处理,用户一番操作下来可能会很久。采用异步处理之后,系统会将所有数据存放在 MQ 中,用户不需要立即处理,大大缩短了系统的响应时间。
2.2. 应用解耦
消息队列可以对系统间的依赖进行解耦,降低依赖系统变更带来的影响。例如:用户在下单后,订单系统A需要通知系统B、系统C等做出响应的处理,此时的系统A是强依赖系统B和系统C的,一旦系统B出现故障或者需要重新加入高耦合的系统D时就必须要更改系统A的代码,如果经常出现这种依赖系统迭 ...
1. Mahout推荐算法
Mahout完整的封装了协同过滤算法,根据相似度来推荐目标
2. 相关依赖1234567891011<!--Mahout推荐算法--><dependency> <groupId>org.apache.mahout</groupId> <artifactId>mahout-mr</artifactId> <version>0.13.0</version></dependency><dependency> <groupId>org.apache.mahout</groupId> <artifactId>mahout-integration</artifactId> <version>0.13.0</version></dependency>
3. Recommender的API接口
Recommender接口方法
描述 ...
一、Future1. 使用1234567891011121314151617181920public class FutureTest { @Autowired privite UserService userService; public static void main(String[] args) throws ExecutionException, InterruptedException { //使用内部线程池 ExecutorService executorService = Executors.newFixedThreadPool(10); //创建新的线程去异步执行查询用户列表 FutureTask<List<User>> userFutureTask = new FutureTask<>(new Callable<List<User>>() { @Override ...
效果预览:
在线Demo:小飞机—Pzai,目前暂时只能在网页端玩,后续会在手机端隐藏该板块
教程:1. 新增plane.css文件1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859/* --------------------首页飞机操作样式-------------------- */.planeOpt kbd { margin: 0 3px; padding: 3px 5px; border: 1px solid #b4b4b4; border-radius: 3px; background-color: #f8f8f8; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .25), 0 2px 1px 0 rgba(255, 255, 255, .6) inset; box-shadow: 0 1px 3px rgba( ...
希望这篇文章能帮助想要学会理财,成为韭菜但却一无所知的你提早实现财富自由,高收益的同时会伴随高风险,一定要量力而行
一、什么是K线?K线(也称为蜡烛图)是技术分析中常用的一种图表类型,用于显示一段时间内某种资产的价格变化,所以K线的计算周期可将其分为日K线,周K线,月K线,年K线。K线图最早起源于日本,后来被引入到西方金融市场,广泛用于股票、期货、外汇等各种金融市场的分析。
二、K线的构成
每根K线包括以下四个关键价格点,除此之外还包括实体和影线(上影线和下影线),它们反映了价格在这段时间内的波动情况
开盘价(Open):某一时间段内的第一个交易价格。
收盘价(Close):某一时间段内的最后一个交易价格。
最高价(High):某一时间段内的最高交易价格。
最低价(Low):某一时间段内的最低交易价格。
K线的基本构成
实体(Body):K线的主要部分,表示开盘价和收盘价之间的范围。如果收盘价高于开盘价,则实体通常为白色或绿色,表示上涨。如果收盘价低于开盘价,则实体通常为黑色或红色,表示下跌。
影线(Shadow或Wick):位于实体上下方的细线,表示最高价和最低价与实体 ...



