java
CR.奈斯
这个作者很懒,什么都没留下…
展开
-
并发编程与源码解析 (三)
并发编程 (三)1 Fork/Join分解合并框架1.1 什么是fork/join Fork/Join框架是JDK1.7提供的一个用于并行执行任务的框架,开发者可以在不去了解如Thread、Runnable等相关知识的情况下,只要遵循fork/join开发模式,就完成写出很好的多线程并发任务。 同时其按照分而治之的思想,可以把一个大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。 对于Fork/Join框架的理解可以认为其由两部分组成,Fork就是把一个大任务切分为若干原创 2020-12-03 00:37:16 · 420 阅读 · 0 评论 -
常见单例模式与四大原则详解
单例模式单列模式有5种常见的写法饿汉式懒汉式双检锁静态内部类,用的最多枚举单例的四大原则:构造私有。以静态方法或者枚举返回实例。确保实例只有一个,尤其是多线程环境。4确保反序列换时不会重新构建对象。饿汉模式 public class SingleTon { private static SingleTon INSTANCE = new SingleTon(); private SingleTon() { } public stat原创 2020-11-06 00:49:15 · 507 阅读 · 0 评论 -
详解zookeeper分布式锁教程
案例:减少库存案例:多线程对共享数据并发操作问题;线程安全问题:同步代码块和锁机制来解决;导入junit依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http:/原创 2020-11-02 12:55:17 · 314 阅读 · 0 评论 -
Dubbo的远程过程调用和自定义RPC框架
Dubbo的介绍Apache Dubbo是一款高性能的Java RPC框架。其前身是阿里巴巴公司开源的一个高性能、轻量级的开源Java RPC框架,可以和Spring框架无缝集成。Dubbo提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。官网:http://dubbo.apache.org/什么是RPC?RPC全称为remote procedure call,即远程过程调用。比如两台服务器A和B,A服务器上部署一个应用,B服务器上部署一个应用,A服务器上的原创 2020-10-29 20:02:13 · 696 阅读 · 3 评论 -
FastDFS轻量级分布式文件系统
1. FastDFS简介1.1 FastDFS体系结构FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。回顾:Dubbo工作流程FastDFS工作流程FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下原创 2020-10-24 10:12:21 · 306 阅读 · 0 评论 -
ZooKeeper最详细的介绍
一、分布式概述早期我们使用单体架构,即所有服务部署在一台服务器的一个进程中,随着互联网的发展,逐步演进为分布式架构,多个服务分别部署在不同机器的不同进程中。二、zookeeper概述zookeeper是一个开源的分布式协调服务,提供分布式数据一致性解决方案,分布式应用程序可以实现数据发布订阅、负载均衡、命名服务、集群管理分布式锁、分布式队列等功能。zookeeper是一个开源的分布式协调服务,提供分布式数据一致性解决方案,分布式应用程序可以实现数据发布订阅、负载均衡、命名服务、集群管理分布式锁、分原创 2020-10-18 01:21:46 · 2502 阅读 · 1 评论 -
什么是分布式事务?常用的分布式事务的解决方案有哪些什么?各有什么优缺点?
分布式事务一、分布式事务介绍1.1 什么是事务数据库事务(简称:事务,Transaction)是指数据库执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成[由当前业务逻辑多个不同操作构成]。事务拥有以下四个特性,习惯上被称为ACID特性:原子性(Atomicity):事务作为一个整体被执行,包含在其中的对数据库的操作要么全部被执行,要么都不执行。一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另一个一致状态。一致状态是指数据库中的数据应满足完整性约束。除此之外,原创 2020-10-18 00:22:39 · 4079 阅读 · 2 评论 -
IntelliJ IDEA设置添加过滤文件或目录
在工作中,每次导入项目的时候会经常遇到下面这样的问题:但是 IntelliJ IDEA 有个很人性化的设置,那就是添加过滤文件或目录了解决方法:1.首先,点击左上角的 “File”,选择 “settings”,或直接按快捷键Ctrl+Alt+s2.选择“Editor”3.选择 “File Types”—>在右侧的忽略文件和目录(Ignore files and folders)中添加自己需要过滤的内容在右侧窗口“Ignore files and folders”一栏中添加如下忽略:原创 2020-09-29 20:10:24 · 3315 阅读 · 0 评论 -
IntelliJ IDEA 统一设置编码为UTF-8编码
IntelliJ IDEA 统一设置编码为UTF-8编码 方法一:File->Settings->Editor->File Encodings 方法二:File->Other Settings->Default Settings ->Editor->File Encodings 方法三:1.找到项目中的.idea文件夹2.将项目中的.idea文件夹中的encodings.xml用Notepad++打开3.将文件中的编码格式改为:UTF-8原创 2020-09-26 12:47:54 · 593 阅读 · 0 评论 -
IntelliJ IDEA设置自动导包方法
IntelliJ IDEA设置自动导包方法IntelliJ IDEA 有个很人性化的设置,那就是自动导包了,这对于我们来说,是个提高我们开发效率的功能1.首先,点击左上角的 “File”,选择 “settings”,或直接按快捷键Ctrl+Alt+s2.选择“Editor”3.选择 “general”4.选择“auto import” —>在右侧将空勾选[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7TbBAVyV-1601306702309)(C:\原创 2020-09-28 23:35:00 · 18054 阅读 · 2 评论