- 博客(28)
- 资源 (26)
- 收藏
- 关注
原创 Redis 面试 8 连问
如何保证Redis高并发、高可用(https://zhuanlan.zhihu.com/p/260662561)1、如何保证Redis高可用和高并发?Redis主从架构,一主多从,可以满足高可用和高并发。出现实例宕机自动进行主备切换,配置读写分离缓解Master读写压力。2、Redis高可用方案具体怎么实施?使用官方推荐的哨兵(sentinel)机制就能实现,当主节点出现故障时,由Sentinel自动完成故障发现和转移,并通知应用方,实现高可用性。它有四个主要功能:集群监控,负.
2021-05-28 11:49:41 154
原创 TCP三次握手、四次挥手
TCP三次握手、四次挥手传输控制层(tcp/udp)TCP/IP不是一个协议,而是一个协议族的统称。里面包括了IP协议,IMCP协议,TCP协议,以及我们更加熟悉的http、ftp、pop3协议等等三次握手、四次挥手TCP作为一种面向连接的、可靠传输控制协议,其核心思想:既要保证数据可靠传输,又要提高传输的效率面向连接TCP三次握手、四次挥手传输控制层(tcp/udp)TCP/IP不是一个协议,而是一个协议族的统称。里面包括了IP协议,IMCP协...
2021-05-28 11:45:23 194
原创 KafkaProducer发送消息流程(生产者横向扩展)
KafkaProducer发送消息流程(生产者横向扩展)在kafka中,如果某个topic有多个partition,producer又怎么知道该将数据发往哪个partition呢?kafka中有几个原则:partition在写入的时候可以指定需要写入的partition,如果有指定,则写入对应的partition 如果没有指定partition,但是设置了数据的key,则会根据key的值hash与分区数取余算出一个partition 如果既没指定partition,又没有设置key,则会轮.
2021-05-28 11:20:59 303
原创 Kafka消费者 rebalance 策略
消费者 rebalance 策略1.什么是Rebalance重新负载? Rebalance,即对 Kafka 中的分区进行重新分配的过程。如需详细了解 Kafka 的分区分配策略,请点击链接跳转了解更多:8.Kafka 分区分配策略2.什么时候触发Rebalance操作 当出现以下几种情况时,Kafka 会进行一次重新分区分配操作,即 Kafka 消费者端的 Rebalance 操作① 同一个 consumer 消费者组 group.id 中,新增了消费...
2021-05-28 11:17:20 598
原创 Kafka索引机制
数据文件的分段和索引kafka解决查询效率的手段之一是将数据文件分段存储,可以配置每一个文件的大小。每一个端段单独放在一个.log的文件中,数据文件命名是20个字符的长度,以每一个分段文件开始的最下offset来命名,其他位置用0填充。最初始的文件是00000000000000000000.log命名的,比如下一个log中的第一条消息的offset是18987,则该log文件的命名是00000000000000018987.log其中每一个log文件的大小默认是1GB,每生成一个log文件就会对应产
2021-05-28 11:13:00 824
原创 Kafka为什么快-顺序访问和零拷贝
1、页缓存 + 顺序写为了优化读写性能,Kafka利用了操作系统本身的Page Cache,就是利用操作系统自身的内存而不是JVM空间内存。这样做的好处有: 1避免Object消耗:如果是使用 Java 堆,Java对象的内存消耗比较大,通常是所存储数据的两倍甚至更多。 2避免GC问题:随着JVM中数据不断增多,垃圾回收将会变得复杂与缓慢,使用系统缓存就不会存在GC问题Kafka在写数据的时候,一方面基于了os层面的page cache来写数据,所以性能很高,本...
2021-05-28 11:08:07 366
原创 Kafka如何保证消息不丢
Kafka索引机制数据文件的分段和索引kafka解决查询效率的手段之一是将数据文件分段存储,可以配置每一个文件的大小。每一个端段单独放在一个.log的文件中,数据文件命名是20个字符的长度,以每一个分段文件开始的最下offset来命名,其他位置用0填充。最初始的文件是00000000000000000000.log命名的,比如下一个log中的第一条消息的offset是18987,则该log文件的命名是00000000000000018987.log其中每一个log文件的大小默认是1GB,每.
2021-05-28 10:56:40 133
原创 Kafka如何保证数据的可靠性和一致性
Kafka如何保证数据的可靠性和一致性1数据可靠性 1.1Topic 分区副本 Kafka 可以保证单个分区里的事件是有序的,分区可以在线(可用),也可以离线(不可用)。在众多的分区副本里面有一个副本是 Leader,其余的副本是 follower,所有的读写操作都是经过 Leader 进行的,同时 follower 会定期地去 leader 上的复制数据。当 Leader 挂了的时候,其中一个 follower 会重新成为新的 Leader。通过分区副本,引入了数据冗余,同时也提供了 Ka..
2021-05-28 10:51:00 3036
原创 Linux下自动备份全Mysql数据库并压缩发送至FTP、开启增量备份
#backup database to filemysqldump -uroot -ppassword--databases lrs | gzip > /root/backups/lrs_`date +'%Y-%m-%d'`.sql.gzchown root:root /root/backups/lrs_`date +'%Y-%m-%d'`.sql.gzftp -nopen 2
2020-04-17 18:42:24 223
原创 NOSQL之Redis学习札记
Redis是一个开源的,先进的Key-Value存储。它通常被称为数据结构服务器,因为键可以包含字符串、哈希、链表、集合和有序集合。这些数据类型都支持push/pop、add/remove及取交集和并集及更丰富的操作,Redis支持各种不同方式的排序。为了保证效率,数据都是缓存在内存中的,它可以周期性的把更新的数据写入磁盘或者把修改的操作写入追加的记录文件。
2014-11-27 16:00:25 743
转载 亿级Web系统搭建——单机到分布式集群
大规模流量的网站架构,从来都是慢慢“成长”而来。而这个过程中,会遇到很多问题,在不断解决问题的过程中,Web系统变得越来越大。并且,新的挑战又往往出现在旧的解决方案之上。希望这篇文章能够为技术人员提供一定的参考和帮助。 以下为原文当一个Web系统从日访问量10万逐步增长到1000万,甚至超过1亿的过程中,Web系统承受的压力会越来越大,在这个过程中,我们会遇到很多的问题。为了解决这
2014-11-08 20:30:19 687
转载 数据仓库与元数据管理标准化
转载,原文地址:点击打开链接1. 前言在事务处理系统中的数据,主要用于记录和查询业务情况。随着数据仓库(DW)技术的不断成熟,企业的数据逐渐变成了决策的主要依据。数据仓库中的数据是从许多业务处理系统中抽取、转换而来,对于这样一个复杂的企业数据环境,如何以安全、高效的方式来对它们进行管理和访问就变得尤为重要。解决这一问题的关键是对元数据进行科学有效的管理。2. 元数据按照传统的定
2014-08-11 11:24:24 7757
原创 将windows server2008上的web应用部署到Linux环境下
缘由:之前项目在windows server2008上运行好好的,后来faxi
2014-05-21 10:24:01 1185
转载 MySQL存储过程详解 mysql 存储过程
MySQL存储过程详解 mysql 存储过程 (2010-12-13 10:59:38)转载▼mysql存储过程详解1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给
2014-05-05 20:16:45 657
原创 hibernate3.3.1和3.6.0版本的xml配置文件的写法
1.Hibernate 3.3.1 的XML的头: "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> "-//Hibernat
2013-10-09 21:21:01 1694
转载 The reference to entity "characterEncoding" must end with the ';' delimiter.
The reference to entity "characterEncoding" must end with the ';' delimiter. Java 解析XML文件错误。错误信息提示代码类似如下:The reference to entity "characterEncoding" must end with the ';' delimiter.org.
2013-10-04 17:26:43 1205
原创 在action,servlet之外的bean里获取applicationcontext的方法
1.通过Spring提供的工具类获取ApplicationContext对象 import javax.servlet.ServletContextEvent;import javax.servlet.ServletContextListener;import org.springframework.context.ApplicationContext;impo
2013-10-03 10:57:40 922
原创 MySQL使用HQL语句实现按中文拼音排序
MySQL 默认字符集是utf-8,如果想实现中文排序,就需要用convert(filedName using gbk) 实现,但现有的hibernate的hql不能支持此函数,Hibernate已经对此做了相应的方案解决。我们可以在Dialect注册一个数据库函数,java代码如下:import org.hibernate.Hibernate; impor
2013-09-28 21:24:06 2521
转载 JFreechart生成带热点的饼图
JFreechart生成带热点的饼图(原文地址:http://zhaobing315.iteye.com/blog/1000822)jfreechartServletHTC三星Linux 前段时间公司要做报表开发,顺便研究了下JFreechart的简单使用,个人觉得JFreechart生成的图片效果很差,如:图像、字体模糊,缺乏动态效果,比flash相差很远。不过作
2013-09-01 22:55:22 1183
转载 表单提交后action获取到的中文为乱码排查步骤
struts2表单提交后数据库存储中文乱码问题原文地址:http://linux5.blog.51cto.com/1368878/1095592表单提交后action获取到的中文为乱码排查步骤(提交的是action的属性):1、需要在struts.xml中做i18n配置2、配置后action中打印是否能够获取到中文,如果获取不到中文,在action中进行转码,如下:
2013-09-01 14:09:59 3171
转载 生成IP+时间+随机数的文件名
生成IP+时间+随机数的文件名:import java.text.SimpleDateFormat;import java.util.Date;import java.util.Random;public class IPTimeStamp {/*** 生成IP+时间+随机数的文件名* @param ip* @return*/public static St
2013-06-24 22:28:56 850
原创 在Ubuntu下安装配置Hadoop
在Ubuntu下安装配置Hadoop一.安装ubuntu 我是下载的ubuntu10.04,在32位的虚拟机上使用virtualbox安装的,没错,是在虚拟机上在安装虚拟机,然后安装ubuntu二. 在Ubuntu下创建hadoop用户组和用户;1. 创建hadoop用户组;1sudo addgroup hadoop如图:
2013-06-24 22:19:35 993
原创 TFTP文件传输代码注解
三)关键代码段及注释:-----------------先从客户端主函数看:int main(int argc, char *argv[]){ int sockfd, fd, nbyte; char command[32]; //定义一个字符数组,用于接受命令 struct sockaddr_in server_addr;//定义结构体,存储套接字信息
2012-03-04 10:48:23 1445
转载 LINUX 网络编程
4 LINUX网络编程 网络程序设计全靠套接字接收和发送信息,尽管套接字这个词好像有点神秘,其实这个概念极其容易理解。 4.2 SOCKET 我们可以给你一个初步的构建一个连接的工作流程,以下谈到的函数将会在流程图中一一出现,如图4-1所示: 图4-1 socket工作流程图 4.2.1
2012-03-04 10:44:56 642
Effective JAVA中文本 第二版
2015-01-26
myeclipse生成javadoc并转成chm文档+jd2chm.exe+htmlhelp.exe
2013-05-07
嵌入式Linux系统的移植及其根文件系统的实现
2012-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人