2019-08-24 16:36
目录
概念
面向流设计
异步化
响应式宣言
参考文档
概念
Reactive Programming(响应式编程)已经不是一个新东西了。
关于 Reactive 其实是一个泛化的概念,由于很抽象,一些理论性的介绍很容易把人带到沟里去,包括一些语言框架在实现上也会使用不同的一些概念。
按照 维基百科的解释:
reactive programming is a declarative programming paradigm concerned with data streams and the propagation of change
...
2019-08-24 16:17
目录
1、Minor GC 、Major GC 和 Full GC
1、对象优先在 Eden 上分配
2、大对象直接进行老年代
3、长期存活的对象将进入老年代
4、新生代Survivor 区相同年龄所有对象之和大于 Survivor 所有对象之和的一半,大于等于该年龄的对象进入老年代
5、空间分配担保原则
我们说Java是自动进行内存管理的,所谓自动化就是,不需要程序员操心,Java会自动进行内存分配和内存回收这两方面。
前面我们介绍过如何通过垃圾回收器来回收内存,那么本篇博客我们来聊聊如何进行分配内存。
...
2019-08-24 16:06
线程池为线程生命周期的开销和资源不足问题提供了解决方 案。通过对多个任务重用线程,线程创建的开销被分摊到了多个任务上。
线程实现方式
Thread、Runnable、Callable
//实现Runnable接口的类将被Thread执行,表示一个基本任务
public interface Runnable {
//run方法就是它所有内容,就是实际执行的任务
public abstract void run();
}
//Callable同样是任务,与Runnable接口的区别在于它接口泛型,同时它执行任务候带有返回值;
...
2019-08-24 15:07
项目的完整代码在 C2j-Compiler
前言
第十一篇,终于要进入代码生成部分了,但是但是在此之前,因为我们要做的是C语言到字节码的编译,所以自然要了解一些字节码,但是由于C语言比较简单,所以只需要了解一些字节码基础
JVM的基本机制
JVM有一个执行环境叫做stack frame
这个环境有两个基本数据结构
执行堆栈:指令的执行,都会围绕这个堆栈来进行
局部变量数组,参数和局部变量就存储在这个数组。
还有一个PC指针,它指向下一条要执行的指令。
举一个例子#
Copy
int f(int a, int b) {
...
2019-08-24 15:42
最近学习了 BlockingQueue,发现 java 的 BlockingQueue 并不是每一个实现都按照 BlockingQueue 的语意来的,其中有不少坑。直接上代码吧:...
2019-08-24 15:17
开源音乐下载神器XMusicDownloader更新啦,新增网易、腾讯音乐歌单歌曲、歌手歌曲、专辑歌曲一键下载,同时支持下载flac无损音乐。
功能
V1.0 功能开源工具软件XMusicDownloader——音乐下载神器
聚合搜索多家音乐网站
支持音乐批量下载
搜索结果综合排序
可以编写Provider程序,支持其他音乐网站
V1.1 新增功能支持歌单、专辑、歌手歌曲下载,支持无损下载
支持歌单、专辑、歌手歌曲下载(腾讯、网易)
支持flac无损、320,128 码率下载
V1.1截图
...
2019-08-24 15:39
背景首先,来谈谈B树。为什么要使用B树?我们需要明白以下两个事实:...
2019-08-24 15:22
一、说明
生产环境中部署nacos首先肯定是使用集群模式cluster保证高可用,本文主要详细介绍最佳的集群方案怎样搭建与spring cloud程序怎样集成
二、集群方案
下图是官方推荐的集群方案,通过域名 + VIP模式的方式来实现,可读性好而且换ip方便
file
这里的VIP直接使用 Nginx就可以实现了
三、方案实现
nacos集群最低配置是至少需要3个实例,因为我在本地搭建只有一台机器所以通过修改端口的方式来部署这3个实例,端口分别为:8848、8849、8850
...
2019-08-24 15:23
第一部分:微服务的诞生、演变以及应用策略记者:近几年来,微服务架构设计方式被提出并在越来越多的企业中得以实践和落地,但对于刚开始接触微服务的人来说,还是不知道要从哪些方面开始了解。您能否结合软件架构的发展历史,聊聊微服务的发展与特征。...
2019-08-24 15:51
1、概述
通过前面几篇文章
史上最全面的SignalR系列教程-1、认识SignalR
史上最全面的SignalR系列教程-2、SignalR 实现推送功能-永久连接类实现方式
史上最全面的SignalR系列教程-3、SignalR 实现推送功能-集线器类实现方式
RDIFramework.NET敏捷开发框架通过SignalR技术整合即时通讯(IM)
我们对SignalR的概念以及SignalR的最主要的两类通信模型(Persistent Connections与Hubs)进行了详细的对比讲解,也做了案例展示。本篇将为大家介绍.NET特有的Self-Host自托管的应用,即以Self-Host自托管为宿主加载SignalR服务。
...
2019-08-24 15:49
前面学习了Blazor的特点、环境搭建及基础知识,现在我们尝试的做个实际的组件。
Ant Design是蚂蚁金服是基于Ant Design设计体系的 UI 组件库,主要用于研发企业级中后台产品。目前官方是基于React和Angular实现的,今年也推出了Vue的实现。其组件涵盖面较广,其组件风格及交互效果还是比较惊艳的,后面准备利用Ant Design的样式文件利用Blazor模仿几个组件的实现。
由于也是新学的Blazor开发,可能实现的方式有些笨拙,希望高手提出宝贵意见,先看看实现的Button 按钮、Grid 栅格、导航栏的效果。
...