1. ThreadLocal 1.1 简介 ThreadLocal是线程内部的数据存储类,通过它可以指定的线程中存储数据,数据存储以后,只有在指定线程中可以获取到存储的数据,对于其他线程来说则无法获取数据。 它能够满足以下需求: 同一个变量在不同的线程中需要有不同的副本 经常应用于static方法, ...
分类:
其他好文 时间:
2019-06-22 19:48:20
阅读次数:
83
原文:https://www.cnblogs.com/zhaoyl/p/3620204.html 首先从OS设计原理上阐明三种线程:内核线程、轻量级进程、用户线程 内核线程 内核线程就是内核的分身,一个分身可以处理一件特定事情。这在处理异步事件如异步IO时特别有用。内核线程的使用是廉价的,唯一使用的 ...
分类:
编程语言 时间:
2019-06-16 11:19:16
阅读次数:
88
问题导读: 1.zookeeper在kafka的作用是什么? 2.kafka中几乎不允许对消息进行“随机读写”的原因是什么? 3.kafka集群consumer和producer状态信息是如何保存的? 4.partitions设计的目的的根本原因是什么? 一、入门 1、简介 Kafka is a d ...
分类:
其他好文 时间:
2019-06-12 19:52:22
阅读次数:
88
谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制。 Redis正是利用这两个功能来保证Redis的高可用。 哨兵(sentinal) 哨兵是Redis集群架构中非常重要的一个组件,哨兵的出现主要是解决了主从复制出现故障时需要人为干预的问题。 1.Red ...
分类:
其他好文 时间:
2019-05-13 14:45:16
阅读次数:
109
问题导读: 1.zookeeper在kafka的作用是什么? 2.kafka中几乎不允许对消息进行“随机读写”的原因是什么? 3.kafka集群consumer和producer状态信息是如何保存的? 4.partitions设计的目的的根本原因是什么? 一、入门 1、简介 Kafka is a d ...
分类:
其他好文 时间:
2019-05-08 15:56:20
阅读次数:
114
精炼并增补于:界面之下:还原真实的MV*模式 图形界面的应用程序提供给用户可视化的操作界面,这个界面提供给数据和信息。用户输入行为(键盘,鼠标等)会执行一些应用逻辑,应用逻辑(application logic)可能会触发一定的业务逻辑(business logic)对应用程序数据的变更,数据的变更 ...
分类:
Web程序 时间:
2019-05-01 18:50:20
阅读次数:
231
设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。 今天,螃蟹在IT学习者网站就设计模式的内在价值做一番探讨,并以spring为例进行讲解,只有领略了其设计的思想理念,才能在工作学习中运用到“无形”。 Spring作为业界的经典框架,无论是在架构设计 ...
分类:
编程语言 时间:
2019-04-29 00:22:50
阅读次数:
181
1、持久性 kafka使用文件存储消息,这就直接决定kafka在性能上严重依赖文件系统的本身特性。且无论任何OS下,对文件系统本身的优化几乎没有可能。因为kafka是对日志进行append操作,因此磁盘检索的开支是较小的;同时为了减少磁盘写入的次数,broker会将消息暂时buffer起来,当消息的 ...
分类:
其他好文 时间:
2019-04-24 00:23:31
阅读次数:
184
大学无聊的时候看过linux内核的定时器,如今已经想不起来了,也不知道当时有没有看懂,如今想要模仿linux内核的定时器。用python写一个定时器,已经想不起来它的设计原理了。找了一篇blog,linux 内核定时器 timer_list具体解释。 看了好一会才有些明确,開始參照着用python写 ...
分类:
编程语言 时间:
2019-04-19 20:15:43
阅读次数:
200
前提条件(Bootstrap 自带) 首先使用这个布局之前要定义一下代码: 这行代码如果不懂,可以搜索一下,总之大致意思就是,被定义的元素的内边距和边框不再会增加它的宽度,不加入的话排版会有问题。 不过,Bootstrap自己当然已经加入了,如果你是使用整个Bootstrap框架,那你可以无视这里, ...
分类:
其他好文 时间:
2019-04-09 12:38:25
阅读次数:
184