Wesley13 Wesley13
3年前
java中volatile关键字的理解
一、基本概念Java内存模型中的可见性、原子性和有序性。可见性:  可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。  可见性,是指线程之间的可见性,一个线
Wesley13 Wesley13
3年前
java并发编程实战:第十六章
一、什么是内存模型,为什么要使用它如果缺少同步,那么将会有许多因素使得线程无法立即甚至永远看到一个线程的操作结果编译器把变量保存在本地寄存器而不是内存中编译器中生成的指令顺序,可以与源代码中的顺序不同处理器采用乱序或并行的方式来执行指令保存在处理器本地缓存中的值,对于其他处理器是不可见在单线程中,只要
Stella981 Stella981
3年前
Canal简介及配置说明
1.简介canal是纯Java开发的,基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql。原理相对比较简单:1.1.canal模拟mysqlslave的交互协议,伪装自己为mysqlslave,向mysqlmaster发送dump协议2.2.mysqlmaster收到dump请
Easter79 Easter79
3年前
TiDB Pre
8月30日,TiDB发布PreGA版。该版本对MySQL兼容性、SQL优化器、系统稳定性、性能做了大量的工作。TiDB:SQL查询优化器调整代价模型优化索引选择,支持不同类型字段比较的索引选择支持基于贪心算法的JoinReorder
Stella981 Stella981
3年前
Kafka介绍
最近公司项目中做了一个两个oracle数据库数据进行数据实时同步的功能,由于数据量和环境的因素,开发人员采用了kafka做为消息中间件来转发数据,笔者就进行了kafka的学习,记录了下面的文档,望大家多多指教,共同学习进步。一、   Kafka介绍  Kafka是由Java和Scala编写的是一个分布式、高吞吐量、分区的、多副本的、多订阅者
Stella981 Stella981
3年前
DBus数据库表结构变更处理方案
导读:DBus是我们要介绍的在敏捷大数据(AgileBigData)背景下的第一个平台。企业中大量业务数据保存在各个业务系统数据库中,为同时解决数据同步的一致性和实时性问题,DBus(数据总线)平台应运而生。DBus专注于数据的实时采集和实时分发,是一种基于日志的解决方案,同时能够提供消息订阅的方式给下游系统使用。本篇文章主要介绍在DBus的设计中,它
Stella981 Stella981
3年前
MVC框架Wheel简单实例
这个教程,主要就是介绍如何使用MVC框架Wheel.简单的描述下我们想要做的事情,创建一个user表,然后通过不同的视图方式显示出user表的内容。我们采用Mysql数据库.数据库DROPTABLEIFEXISTSuser_;CREATETABLEuser_(idint(11)NO
Wesley13 Wesley13
3年前
Java多线程下的协同控制,这些你都知道了吗?
协同控制是并发程序必不可少的重要手段。主要分为两大控制方法,一个是JDK提供的最基础的协同控制方法,一个是java.util.concurrent包下的拓展类控制,接下来我们将会介绍这两种方法有哪些操作可以进行同步控制。一、基础的协同控制线程基础知识因为加锁涉及到多线程,所以有必要先说一下线程的基础知识(定义那
Wesley13 Wesley13
3年前
thinkphp 消息队列
当前笔记中的内容针对的是thinkphpqueue的v1.1.2版本,现在官方已经更新到了v1.1.3版本,下文中提到的几个Bug在最新的master分支上均已修复。笔记中的部分内容还未更新。传统的程序执行流程一般是即时|同步|串行的,在某些场景下,会存在并发低,吞吐量低,响应时间长等问题。在大型系统中,一般会引入消息队列的组件,将流
想天浏览器 想天浏览器
3年前
想天浏览器:推荐几款好用的桌面浏览器
1:想天浏览器基于Chromium内核,一款团队协作与浏览器结合的桌面浏览器,支持全局搜索;云端标签分组空间;团队的创建、显示,同步创建一个团队沟通群聊与社区圈子;下载助手;;支持消息中心;标签组管理功能;密码管理功能;用户脚本管理;强大的导航管理;DIY桌面功能等丰富的功能,不仅如此想天浏览器还有很多实用的插件,可以帮助你拦截广告、翻译网页等,为你带来高效