Java8Stream流Api学习
注意:
parallelStream 并行流,线程不安全。而且执行效率要看你的电脑cup总数,默认线程数和cpu总数相当。
stream 单管,效率不及parallelStream
常见函数:
filter()、map()、flatMap()、mapToInt()、sorted()、reduce()、limit()、skip()、groupingBy()、allMatch()、findFirst()、sum()、max()、min()、average()、distinct()、count(返回流中元素个数)等……
首先我们先创建基础支撑数据。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980public class Main { public static void main(String[] args ...
SpringCloud与微服务技术栈整理
主线放这里,组件细节放单篇。
主线先串 4 个问题:
1、服务怎么注册和发现
2、请求怎么从入口网关走到下游服务
3、配置、消息队列、分布式事务分别解决什么问题
4、调用链一长之后,哪里最容易出错
注册中心Eureka 在前,Nacos 在后。
12345678spring: application: name: cloud-eureka-servereureka: client: register-with-eureka: false fetch-registry: false
细节看:
1、SpringCloud学习
2、Nacos服务
网关 Gateway 负责统一入口、路由转发、鉴权、限流、日志。
核心概念:
1、Route
2、Predicate
3、Filter
123456server.port=8181spring.application.name=service-gatewayspring.cloud.nacos.discovery.server-addr=127.0.0.1:8848spring.clo ...
SpringCloud学习
以下为常用服务注册中间件
EurekaEureka自我保护访问Eureka主页时,如果看到这样一段大红色的句子:
EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY’RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANCES ARE NOT BEING EXPIRED JUST TO BE SAFE.
那么表明Eureka的自我保护模式是启动的。
相反如果看见如下
THE SELF PRESERVATION MODE IS TURNED OFF. THIS MAY NOT PROTECT INSTANCE EXPIRY IN CASE OF NETWORK/OTHER PROBLEMS.
那么表明Eureka的自我保护模式是关闭的
背景:正常情况下,如果Eureka Server在一定时间内(默认90秒)没有接收到某个微服务实例的心跳,Eureka Server将会移除该实例。
原理:如果在15 ...
Nginx配置
nginx.conf配置
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/nginx.pid;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - ...
JVM深入浅出
JVMjdk、jre、jvm的关系jDK:是Java开发工具包,是Sun Microsystems针对Java开发员的产品。JDK中包含JRE,在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jvm工作所需要的类库,而jvm和 lib和起来就称为jre。JRE:是java程序的运行环境,它包含JVM。
三者的关系:JDK(JRE(JVM))
什么是JVM可以简单的理解为:就是运行编译好的java文件生成 的.class文件,并且解析为当前运行系统所对应的指令。
Java程序的跨平台特性主要是指字节码文件可以在任何具有Java虚拟机的计算机或者电子设备上运行,Java虚拟机中的Java解释器负责将字节码文件解释成为特定的机器码进行运行,
粗略分来,JVM的内部体系结构分为三部分,分别是:类装载器(ClassLoader)子系统,运行时数据区,和执行引擎。
JVM 的位置在哪里?
JVM整体结构
Java代码执行流程
JVM架构图
Jvm的生命周期
类加载器类加载器子系统作用
类加载器Cla ...
Using JConsole
在多线程下,我们可以使用 JConsole 监测线程状态,如有死锁,可以快速定位。
1、在启动项目前,我们可以在idea的VM options里添加参数:
12345-Djava.rmi.server.hostname=127.0.0.1-Dcom.sun.management.jmxremote-Dcom.sun.management.jmxremote.port=9999-Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false
2、找到Jdk自带的JConsole
3、使用本地进程方式连接对应启动的项目即可
Vue项目实践与组件踩坑
Vue 项目里的常用写法和坑点。基础语法和原理看 Vue学习笔记。
基础常用:const/let、对象字面量增强、filter/map、Promise。
12345678910111213const list = [1, 2, 3]const result = list.filter(item => item > 1).map(item => item * 2)new Promise((resolve, reject) => { const ok = true if (ok) { resolve(result) } else { reject(new Error('request error')) }}).then(res => { console.log(res)})
重点:
1、优先 const,变量会变再用 let
2、箭头函数注意 this
3、列表处理优先 filter/map
4、异步请求先把 Promise ...
正则表达式深入学习
以下是学习B站老韩的正则表达式专题视频总结,传送门。相关代码仓库地址:https://github.com/CoderBleu/learn_regular。
快速入门初识12345678910111213141516171819202122public class Demo { public static void main(String[] args) { String content = "1995年,互联网的蓬勃发展给了Oak机会。业界为了使死板、单调的静态网页能够“灵活”起来,急需一种软件技术来开发一种程序," + "这种程序可以通过网络传播并且能够跨平台运行。于是,世界各大IT企业为此纷纷投入了大量的人力、物力和财力。这个时候," + "Sun公司想起了那个被搁置起来很久的Oak,并且重新审视了那个用软件编写的试验平台,由于它是按照嵌入式系统硬件平台体系结构进行编写的,所以非常小," + ...
review
basic面向对象和面向过程的区别面向过程是具体化的,流程化的,解决一个问题,你需要一步一步的分析,一步一步的实现。
面向对象是模型化的,你只需抽象出一个类,这是一个封闭的盒子,在这里你拥有数据也拥有解决问题的方法。需要什么功能直接使用就可以了,不必去一步一步的实现,至于这个功能是如何实现的,管我们什么事?我们会用就可以了。
面向对象的底层其实还是面向过程,把面向过程抽象成类,然后封装,方便我们使用的就是面向对象了。
基本数据类型
String相关String 底层就是一个 char 类型的数组,比如“你好” 就是长度为2的数组 char[] chars = {'你','好'};
字符型常量和字符串常量的区别
形式上: 字符常量是单引号引起的一个字符 字符串常量是双引号引起的若干个字符
什么是字符串常量池?
字符串常量池位于堆内存中,专门用来存储字符串常量,可以提高内存的使用率,避免开辟多块空间存储相同的字符串,在创建字符串时 JVM 会首先检查字符串常量池,如果该字符串已经存在池中,则返回它的引用,如果不存在,则实例化一 ...
Vue学习笔记
系统学习前端Vue框架,笔记记录于B站的why老师,具体视频链接,在此感谢老师的悉心授课。github笔记地址
初始化Vue初识Vue12345678910111213141516171819202122232425<script src="../js/vue.js"></script> <div id="hi">Hello {{name}}</div> <div class="movie"> <ul> <li v-for="item in movies"> {{item}} </li> </ul> </div> <script> const hi = new Vue({ ...



