- 博客(54)
- 资源 (5)
- 收藏
- 关注
原创 FlieBeat & Kafka & Clickhouse 替代ELK 系列二
clickhouse kafka engine 表 大数据 elk fck clickhouse问题解决clickhouse 集群部署
2022-07-17 13:02:28 1989
原创 FlieBeat & Kafka & Clickhouse 替代ELK 系列一
kafka 集群部署 clickhouse 部署 zookeeper集群部署 filebeat部署 大数据etl
2022-07-16 16:27:23 714
原创 细述dubbo2升级到dubbo3过程中踩过的坑
dubbo 踩坑分享,消费者中建立了太多DubboClientHandler 线程,dubbo3.0 不能优雅停机,dubbo3.0 服务端超时抛NPE异常,dubbo one way 配置。
2021-12-19 18:16:39 2184
原创 业内限流常用技术方案 redis +lua sentinel guava
1:背景在高并发业务场景下,常用的三板斧:"熔断、降级和限流"。接下来重点梳理一下常用的限流算法的几种实现方式。相关测试代码见:https://gitee.com/javadev/data-x2:常用解决方案1:漏桶算法漏桶算法思路很简单:我们把水比作是请求,漏桶比作是系统处理能力极限,水先进入到漏桶里,漏桶里的水按一定速率流出,当流出的速率小于流入的速率时,由于漏桶容量有限,后续进入的水直接溢出(拒绝请求),以此实现限流。2:令牌桶算法令牌桶算法的原理也比较简单,
2021-10-07 19:53:25 875 3
原创 jvm stw 内存溢出相关解决方案
1. 背景线上应用服务单台机器的qps达到1w+。下游调用系统对于rt比较敏感,偶尔会出现熔断。导致大面积的报警。2.监控分析通过监控发现有一台机器的gc时间达到3ms,导致服务出现报警。我们先用常规的方案来分析一下线上线程以及堆栈的信息,详细如下:##查找进程里面cpu占用最高的线程top -Hp pid##top 线程printf "%x\n" 21742 ## 查看线程是否有lock or waiting 的thread ...
2021-09-20 15:08:39 320
原创 大数据sql 解析以及format 解决方案
1:背景在人群画像、离线数仓、报表分析体系中会涉及大量的sql录入、验证、压缩、解析、自动维护数仓的血缘关系,确保录入数据的的准确性。我们需要一些自动化工具校验、识别,维护相关数据确保录入数据的准确性。2:常用解决方案1:alibaba druid sql format 以及解析<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifact...
2021-07-26 13:20:18 846
原创 大数据稳定性体系建设
1:大数据稳定性建设大数据平台承载着公司(推荐、搜索、bi、渠道推广)等多条核心业务线。一旦某环节出现问题,可能影响很多线上用户。基于以上情况联合运维一起做线上稳定性建设,把各个体系的监控、预警提升到一个新高度。2:如何构建线上稳定性我们的组件监控在1.0版本中已上prometheus+grafana,线上各种组件监控已经有初步的保障。但是线上很多业务细节的监控缺乏保障,监控的颗粒度不够。到真正出现问题,所有人手忙脚乱。大数据平台一定需要业务赋能+稳定性治理,在业务赋能的的同时,逐步完善.
2021-07-24 18:03:53 1866 1
原创 Flink 集群架构& 运行模式
1:Flink 大数据必备技能阿里收购Flink以后,它的生态体系越来越完善。尤其是Flink在各个大厂的发展非常迅猛,几乎成为数据开发的标配。尤其最近比较火的湖仓一体,CDC 把Flink 提升到一个新的高度。接下来梳理一下Flink 的集群架构以及运行模式。2:Flink 集群架构3:Flink运行模式4:数据湖 & CDC1:数据湖2:CDCCDC(Change Data Capture)变更数据获取的简称。使用CDC我们可以从数据库中获取已
2021-07-18 06:54:38 576 1
原创 大数据线上日常运维宝典
1:DevOps大厂的运维基本都是通过运维工具赋能开发。实际的开发过程中,运维极少参与一个项目的上线以及日常的管理。这样对于开发的要求就上升一个层次,线上遇到相关问题就需要立马清楚相关问题的解决方案,以及相关命令执行的意义。从而快速精准的定位线上问题。接下来梳理一下日常工作过程中的常用命令,以备急用。2:组件的常用命令1:线上问题常用命令jsatck 处理线上问题##查找进程里面cpu占用最高的线程top -Hp pid##top 线程printf "%x\n" 21742#.
2021-07-15 09:47:41 413
原创 Springboot RedisBlooom & BitSet & Guava BloomFilter 布隆过滤分析
1: 使用 BloomFilter 背景 BloomFilter在项目过程中经常使用,比如缓存穿透、爬虫过滤、猜你喜欢多路召回过滤等,判断一个或多个元素是否在一个集合内。它的空间效率和查询时间都远远超过一般的算法,当然它的缺点是有一定的误识别率和删除困难。接下来重点梳理一下bloomfilter 使用场景以及如何使用。2:Why BloomFilter 可能很多同学会说判断一个或多个元素存在有很多方案,详细如下:1:将访问过的元素保存到数据库,数据库管理系统可以为你...
2021-07-12 21:47:57 601 2
原创 数仓系统 4次升级,过程中的一些思考。
BI 系统的衍变我们的bi 系统经过了4次大版本衍变,详细如下:bi 版本 相关的技术方案 1.0 azkaban离线脚本(hive -f 执行脚本),ads层建立es外表。 bi系统仅支持离线数据。 2.0 迁移离线脚本到db,建立ods,dwd,dim,mid,dws ads层.ads层的数据同步到es 3.0 建立主题,指标。dws层的数据接入kylin 。通过指标完成底层的数据指标复用。实时数据分析引入clickhouse 4.
2021-07-08 22:16:26 379 1
原创 clickhouse OLAP 实战之自定义报表&自定义漏斗
1:项目背景在日常的工作中,业务同学随时需要对比多种纬度的数据,快速的做出决策。(分析页面的漏斗、实时流量、曝光点击/转化)所以我们需要沉淀一套实时的组件,降低数据使用门槛,提升决策效率,在一定方向上驱动业务增长。2:Real Time Olap联机分析处理Olap是一种软件技术,它使分析人员能够迅速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的。它具有FASMI(Fast Analysis of Shared Multidimensional Information),即共享多维.
2021-07-08 22:14:51 1406
原创 elasticsearch 搜索体系搭建
1:项目背景搜索、推荐是一个app内容分发的灵魂,关系着能不能把一些优质的内容精准的推送给目标用户。这里面涉及到分词、同义词、停用词、多平台等,分词完毕以后会涉及相关相似度算法。接下来我综合从多个方向讲讲我对搜索的一些理解。2:搜索分词elasticsearch 生态中有很多分词的组件。主要看业务诉求,公司业务的发展。最常用的中分分词器elasticsearch-analysis-ik、elasticsearch-jieba-plugin,一般建议 ik。如果公司的业务发展比较快需要支持多国语言
2021-07-06 18:50:54 254
原创 mac brew 安装常用软件
1:背景 最近把电脑系统还原,需要重新安装mac 环境。过程中踩了一些小坑,与大家分享一下怎么躺坑。2: 常用安装方法如下1:raw.githubusercontent.com域名无法访问 1:通过https://www.ipaddress.com/ 查询raw.githubusercontent.com的ip地址。可以在mac上下载iHosts(appstore 直接下载免费) ,添加一下host 绑定。(185.199.108.133 ...
2021-07-06 09:45:24 1256
原创 hadoop 小文件优化、压缩
1:项目背景hadoop的小文件管理是一个比较头疼的事情。项目最开始的时候大数据namenode与datanode混布,出现过一次namenode内存不够用,集群所有任务失败。为此单独起一个项目治理小文件,并且迁移datanode,namenode 单独部署。2:HDFS简介HDFS是Hadoop核心组成, 是分布式存储服务。由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。基本都是一个NameNode+多个DataNode组成。NameNode是集群的主节点, DataNode是集群
2021-07-05 11:00:16 315
原创 大数据人群画像技术方案
1:项目背景当一个app达到一定的体量,千人千面、个性化营销是每一个app提升留存、付费必备法宝。始终离不开营销利器,用户画像。项目从0到1构建画像体系,由T+1升级为实时。过程中不断的优化画像方案,赋能产品、业务。在个性化营销的路上越来越顺滑。2:整体的技术方案...
2021-07-04 14:06:18 1439
原创 Nacos 配置中心详细配置
1:引入nacos背景 推荐系统灰度,需要动态调整灰度的百分比。服务降级兜底,组件升级不让核心服务不可用。保障核心服务百分百高可用。2:springboot如何配置1:引入springboot 对应的nacos 配置maven包。<dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-config-spring-boot...
2021-07-02 21:41:43 1179 1
原创 elasticsearch function_score 频道页排序
1:项目背景 app的频道页面需要针对内容做分发优化,让一些优质的内容得到更多的曝光。频道页涉及一定的定向性(同一个频道页只能出现该类目的内容),并且每一个频道页的体量不是很大。思前想后不建议通过推荐系统做内容过滤,再去做分发。2:那我们应该怎么做 之前对elasticsearch funciton_score 有一定的了解,但是不是很深入(阮一鸣大佬的es分享)。查找了相关文档可以通过function_score传入groovy脚本,动态打分。于是在集群上测试相关函数,并且与产...
2021-07-01 22:16:35 465
原创 jquery base64 加密解密 request 文本字段传输
最近项目中涉及文本类型的字段通过json 传递,文本字段里面可能包含了很多特殊字符,这样在传输的过程中必须要加密。方案详细如下: 方案1: 服务端通过 Java提供的 base64位加密 ,view 端通过jquery.base64.js 解密 Java 加密 代码如下: public static String encodeBase64Str(String plainText){
2015-09-12 14:47:22 12188
转载 MySQL中select * for update锁表的问题
由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会执行Table Lock (将整个资料表单给锁住)。举个例子:假设有个表单products ,里面有id跟name二个栏位,id是主键。例1: (明确指定主键,并且有此笔资料,row lock)SELECT * FROM
2015-09-08 12:25:54 1848
原创 nginx常用负载方式
1:轮训是Nginx负载均衡默认方式,采用这种方式每个客户端请求按时间的顺序逐一分配到不同的后端服务器,如果后端服务器无法联系,则自动从负载均衡群集删除。2:轮训几率方式主要用于后端服务器性能不同的情况,weight参数表示权值,权值越高被分配到的几率越大。如果后端服务器无法联系,则自动从负载均衡群集删除。3:IP_HASH方式根据每个客户端请求按照ip的hash 结果分配,这样每个访客固定访问一
2015-06-26 19:59:31 1478
原创 redis 参数优化
vim /etc/sysctl.confvm.overcommit_memory = 1 #最好不要设置为0,Linux的OOM机制在内存不足的情况下,会自动选择性Kill进程点数过高的进程,0会中招。sysctl vm.overcommit_memory=10:表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返
2015-05-06 22:58:16 18834
原创 tomcat启动时候file.encoding的问题
linux 系统默认编码utf-8修改和查看linux编码问题:[html] view plaincopy[root@test-1 ~]# vi /etc/sysconfig/i18n LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" linux默认编码UFT-8,终端输出默认
2015-04-29 10:37:44 3991
原创 GraphicsMagick+im4java 图片处理
最近团队内部分享GraphicsMagick+im4java 图片处理 就把如何安装,运行都统一整理一下。详细如下:在windows上安装ImageMagick:download 地址:http://ftp.icm.edu.pl/pub/unix/graphics/GraphicsMagick/windows/关于Q8,Q16,Q32的说明:(建议使用8,现在数码相机照的相片,
2013-06-30 20:24:41 14307 2
原创 lucene4.0与IKAnalyzer的冲突
在网上下载了lucene当前最新版本4.0,以及IKAnalyzer中文分词器的完整发布包。运行之后发现异常:Exception in thread "main" java.lang.VerifyError: class org.wltea.analyzer.lucene.IKAnalyzer overrides final method tokenStream.(Ljava/lang/S
2013-03-13 21:57:37 11060 3
原创 mysql 对同一个表select 和update
mysql不会让你在对一个表进行update的同时运行select变通的方式是衍生表,生成一张临时表。这样就可以既update又selectupdate tb_trade_1 inner join (select tid ,count(*) as cnt from tb_order_1 group by tid) as der using(tid) set commission_fee
2012-02-22 16:01:48 5382
转载 ThreadLocal 深入了解
一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal)其实的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是Java中一种较为特殊的线程绑定机制,是每一
2012-02-08 14:25:39 554
原创 linux 常用命令
查看CPU信息(型号和主频)cat /proc/cpuinfo显示内存大小cat /proc/meminfo 或 free -m |grep "Mem" | awk '{print $2}'查看硬盘型号# more /proc/scsi/scsi |grep -i model或者# more /etc/sysconfig/hwconf |grep -A 5 -i hd
2011-12-22 15:34:38 608
转载 lvs、haproxy、nginx负载均衡的比较分析
对软件实现负载均衡的几个软件,详细看了一下,从性能和稳定上还是LVS最牛,基本达到了F5硬件设备的60%性能,其他几个10%都有点困难。 不过就因为LVS忒牛了,配置也最麻烦了,而且健康检测需要另外配置Ldirector,其他HAPROXY和NGINX自己就用,而且配置超级简单。 所以建议,如果网站访问量不是门户级别的用HAPROXY或者NGINX就OK了,到了门户级别在用
2011-12-21 14:06:45 616
原创 mysql boolean类型default 0/1 not true,false
You have to specify 0 (meaning false) or 1 (meaning true) as the default. Here is an example:create table mytable ( mybool boolean not null default 0);FYI: boolean is an alias for tinyin
2011-10-31 21:47:31 8723
原创 MYSQL中ERROR 1005 (HY000): Can't create table 错误
今天修复一个MYSQL数据库时遇到的一个小问题:CREATE TABLE `erp_employee` ( `id` int(10) unsigned NOT NULL auto_increment, `employee_name` varchar(32) default NULL, `user_id` int(11) default NULL, `type` va
2011-10-26 23:00:48 2142
原创 linux安装多个MYSQL实例
mysql创建多个实例,其实就是把DATA文件,SOCK,PORT指向不同的文件和端口mysql安装过程看 http://blog.csdn.net/tangpengtao/article/details/6650424先创建3307的DATA目录[root@localhost mysql-5.5.15]# mkdir -p /usr/local/mysql3307[root
2011-10-12 20:38:07 9941
原创 nginx 限速
nginx限制ip并发数,也是说限制同一个ip同时连接服务器的数量1.添加limit_zone 这个变量只能在http使用 vi /usr/local/nginx/conf/nginx.conf limit_zone one $remote_addr 10m;
2011-10-09 11:27:17 3677
原创 Liunx下查看服务器性能
uptime命令#uptime00:59:34 up 20 days, 14:00, 2 user, load average: 0.55, 0.57, 0.84上面命令显示示最近1 分钟内系统的平均负载是0.55,在最近5分钟内系统的平均负载是0.57,在最近的15
2011-10-08 12:05:17 597
原创 mysql bin-log 清除 slave master bin-log删除
1:进入MYSQL的CLIENT输入mysql> show binary logs;+------------------+------------+| Log_name | File_size |+------------------+--
2011-10-01 22:16:14 4395
原创 linux grep搜索文件中的字符串
从文件中查找关键词grep 'linux' text.txt //查找包含 linux的关键词[root@localhost ~]# grep 'root' /etc/grouproot:x:0:rootbin:x:1:root,bin,daemon从多个
2011-10-01 21:35:30 19631
原创 处理 mysql slow sql
在slow_query_log 值为ON的情况下(默认为OFF 默认为10s,同时精确到微秒)默认(log_output值为FIFL时)就会把这种慢查询记录到:slow_query_log_file值所指定的文件中。mysql> select @@global.log_out
2011-09-03 11:40:26 4127
原创 mysql 的 多master对应一个slave
导出数据表结构mysqldump -d -uroot -p superadmin>d:/superadmin.sql让mysql给某一个机器访问grant all on *.* to root@"192.168.1.1" Identified by "198708
2011-08-07 08:53:50 4512
nginx,openssl,zlib,pcre soft download
2011-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人