关闭
当前搜索:

[置顶] linux TCP 和 socket 参数设置

tcp_syn_retries :INTEGER 默认值是5 对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃。不应该大于255,默认值是5,对应于180秒左右时间。(对于大负载而物理通信良好的网络而言,这个值偏高,可修改为2.这个值仅仅是针对对外的连接,对进来的连接,是由tcp_retries1 决定的) tcp_synack_retries :INTEGER 默认值是...
阅读(5386) 评论(0)

推荐: Java lock 的内部实现 AQS

一、概述  谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!  类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch...。  以下是本文的目录大纲:概述框架......
阅读(32) 评论(0)

一个压长定式衍生出的一个角部攻防

压长定式也叫靠压定式,是一组定式的统称。选出其中一个被称为压虎的定式,来说明角里的常见变化。本文适合北京证书2级至2段水平的棋童.图01:基本定式。为便于叙述,本定式白棋先走,白15是此型的要点。或许会有人说黑12长有些软弱,应该走白13长的位置,这也是一个定式,但不是本文论述的范畴。  图02:实战中,不少小朋友甚至弈城中的成人棋友都会把白15走到本图挡角的位置。这步棋是错招,给黑方在白角里走出......
阅读(19) 评论(0)

推荐:分布式理论系列

从ACID到CAP到BASE2PC到3PC到Paxos到Raft到ISR复制、分片和路由副本更新策略负载均衡算法及手段RWN及Quorum与强一致性序本文主要讲述分布式系统开发的一些相关理论基础。一、ACID事务的四个特征:1、Atomic原子性事务必须是一个原子的操作序列单元,事务中包含的各项操作在一次执行过程中,要么全部执行成功,要么全部不执行,任何一项失败,整个事务回滚,只有全部都执行成功,......
阅读(40) 评论(0)

推荐:分布式系统理论基础 - CAP

引言CAP是分布式系统、特别是分布式存储领域中被讨论最多的理论,“什么是CAP定理?”在Quora 分布式系统分类下排名 FAQ 的 No.1。CAP在程序员中也有较广的普及,它不仅仅是“C、A、P不能同时满足,最多只能3选2”,以下尝试综合各方观点,从发展历史、工程实践等角度讲述CAP理论。希望大家透过本文对CAP理论有更多地了解和认识。CAP定理CAP由Eric Brewer在2000年POD......
阅读(40) 评论(0)

kafka 命令列表

kafka 基于0.8.0版本的命令用法: 查看topic分布情况kafka-list-topic.sh# bin/kafka-list-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 (列出所有topic的分区情况) # bin/kafka-list-topic.sh --zookeeper 192.168.197...
阅读(17) 评论(0)

Java8新特性——StreamAPI(一)

1. 流的基本概念 1.1 什么是流? 流是Java8引入的全新概念,它用来处理集合中的数据,暂且可以把它理解为一种高级集合。 众所周知,集合操作非常麻烦,若要对集合进行筛选、投影,需要写大量的代码,而流是以声明的形式操作集合,它就像SQL语句,我们只需告诉流需要对集合进行什么操作,它就会自动进行操作,并将执行结果交给你,无需我们自己手写代码。 因此,流的集合操作对我们来说...
阅读(34) 评论(0)

java的字节码增强的方式

1、修改字节码 第一步要用的工具有ASM、javassist、cglib(基于ASM),用来修改字节码。 2、加载新的字节码 第二步,自定义ClassLoader来加载修改后的字节码 3、替换原来的字节码 或者替换掉原来的字节码,这里主要有两种技术: 1、在JVM加载用户的Class时,拦截,返回修改后的字节码 2、在运行时,使用Instrumentation.redefin...
阅读(51) 评论(0)

JVM即时编译(JIT)

Java JIT(just in time)即时编译器是sun公司采用了hotspot虚拟机取代其开发的classic vm之后引入的一项技术,目的在于提高java程序的性能,改变人们“java比C/C++慢很多”这一尴尬印象。说起来是编译器,但此编译器与通常说的javac那个编译器不同,它其实是将字节码编译为硬件可执行的机器码的。 图片来自于网络 如上图可以看出,整个java应用程序...
阅读(39) 评论(0)

Kafka消费组(consumer group)

一直以来都想写一点关于kafka consumer的东西,特别是关于新版consumer的中文资料很少。最近Kafka社区邮件组已经在讨论是否应该正式使用新版本consumer替换老版本,笔者也觉得时机成熟了,于是写下这篇文章讨论并总结一下新版本consumer的些许设计理念,希望能把consumer这点事说清楚,从而对广大使用者有所帮助。 在开始之前,我想花一点时间先来明确一些概念和术语,...
阅读(99) 评论(0)

Mycat分表分库原则

分表分库虽然能解决大表对数据库系统的压力,但它并不是万能的,也有一些不利之处,因此首要问题是,分不分库,分哪些库,什么规则分,分多少分片。  原则一:能不分就不分,1000万以内的表,不建议分片,通过合适的索引,读写分离等方式,可以很好的解决性能问题。  原则二:分片数量尽量少,分片尽量均匀分布在多个DataHost上,因为一个查询SQL跨分片越多,则总体性能越差,虽然要好于所有数据在一个分片...
阅读(44) 评论(0)

LRU在 Java LRU 的LinkedHashMap 工作原理及实现

1. 概述 LRU 缓存介绍 LRU 是 Least Recently Used 的缩写,翻译过来就是“最近最少使用”,也就是说,LRU 缓存把最近最少使用的数据移除,让给最新读取的数据。而往往最常读取的,也是读取次数最多的,所以,利用 LRU 缓存,我们能够提高系统的性能。 实现 要实现 LRU 缓存,我们首先要用到一个类 LinkedHashMap。 用这个类...
阅读(31) 评论(0)

CentOS7 安装Maven3

下载安装文件  wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz解压安装:  tar -zxvf apache-maven-3.3.9-bin.tar.gz  mv apache-maven-3.3.9 maven (这一步骤可省...
阅读(91) 评论(0)

CentOS 7 yum 安装 Nginx

1.添加Nginx到YUM源 添加CentOS 7 Nginx yum资源库,打开终端,使用以下命令: sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm 2.安装Nginx 在你的CentOS 7 服务器中使用yum命...
阅读(81) 评论(0)

MySQL和Mariadb二进制日志binlog详解

Mariadb/mysql提供了4中不同的日志,分别是错误日志(error.log)、普通日志(general log)、慢日志(slow log)以及二进制日志(binlog)。错误日志记录了系统启动、运行以及停止过程中遇到的一些问题;普通日志记录了Mariadb执行的所有语句以及语句开始执行的时间等信息,用户可以选择性的打开它;慢日志记录了Mariadb所有慢查询的相关信息;而二进制日志则以事...
阅读(102) 评论(0)

推荐:Mycat配置MySQL主从模式(1主1从)下读写分离和自动切换

实验环境 两台Centos7  MySQL5.7.12 IP地址为:192.168.10.36  192.168.10.37 一台Centos7 Mycat IP地址为:192.168.10.31 一:安装mysql,如下图所示(这里采用yum安装): 二:配置MYSQL,以及建立MYSQL主从 1:初始化密码,由于我没在/root目录下找到第一次启动的随机密码,所以我只能用如下操作...
阅读(65) 评论(0)

win7 VMware 安装CentOs7实战

我的电脑系统是win7,所以我需要在win7上安装一个虚拟机-VMware,然后在虚拟机中安装CentOs7,搭建我需要的Linux环境。 linux环境搭建参考文档:http://www.jb51.net/article/105106.htm 一、VMware和CentOs简介 1.VMware是一个虚拟PC的软件,可以在现有的操纵系统上虚拟出一个新的硬件环境,相当于模拟出一台...
阅读(355) 评论(0)

Kafka集群扩展以及重新分布分区

转自:Kafka集群扩展以及重新分布分区 我们往已经部署好的Kafka集群里面添加机器是最正常不过的需求,而且添加起来非常地方便,我们需要做的事是从已经部署好的Kafka节点中复制相应的配置文件,然后把里面的broker id修改成全局唯一的,最后启动这个节点即可将它加入到现有Kafka集群中。  但是问题来了,新添加的Kafka节点并不会自动地分配数据,所以无法分担集群的负载...
阅读(64) 评论(0)

推荐: Kafka深度解析

背景介绍 Kafka简介   Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传输同时支持...
阅读(65) 评论(0)

centos7 安装 kafka_2.11-1.0.0

系统环境 1、操作系统:64位CentOS Linux release 7.2.1511 (Core) 2、jdk版本:1.8.0_121 3、zookeeper版本:zookeeper-3.4.9.tar.gz 4、三台服务器:192.168.1.91; 192.168.1.92; 192.168.1.93; 说明:确保zookeeper集群已经在上面三台服务器上部...
阅读(284) 评论(0)

CentOs7 搭建基于最新版 Redis 集群环境

我在当前的项目建设过程中,使用到了 Redis 的集群,主要是用来减轻数据库的压力和页面加载速度,说的直接点就是增强用户的体验感,其实 Redis 集群搭建看似简单(我当时也是这么想的),但在实际 Redis 集群搭建的过程中也遇到了一些问题,但通过不懈的努力再加上各种解决问题的手段,最后终于解决了。 为了帮助广大同行也是为了帮助自己,在实际的开发过程中提高开发效率和解决 Redis 集群搭...
阅读(66) 评论(0)
999条 共50页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:736478次
    • 积分:11560
    • 等级:
    • 排名:第1582名
    • 原创:388篇
    • 转载:610篇
    • 译文:1篇
    • 评论:35条
    最新评论