自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(78)
  • 收藏
  • 关注

原创 分布式事务--01 redis实现分布式事务锁,解决高并发环境下库存扣减

某东新发一块新机,每人限购2台,预计会有10W的并发,在该情况下,如果扣减库存,保证不会超卖解决方案一利用数据库锁机制,对记录进行锁定,再进行操作SELECT * from goods where ID =1 for update;UPDATE goods set stock = stock - 1;解决方案二使用时间戳字段实现数据更新,避免强制性的数据独占比如goods表新增一个 version字段select * from goods where ID=1update g

2020-06-19 11:41:15 387

原创 项目总结--莱州

1、window server 系统坑爹(服务DNS Client 导致了hosts文件无效,同事配置了相关的大数据hosts没有任何作用,检测手段:ping 主机名 能否有效解析相关服务器主机)2、Kafka故障(此故障是Kafka压力过大,导致了linux系统造成index 多次重建)3、Linux centos6.5 服务器时间、时区的问题(无法和Hbase存入的数据时间保持一致性)...

2019-12-19 16:36:31 165

原创 Linux--02修改时区CST-UTC

[root@localhost ~]# dateThu Aug 16 15:57:30 CST 2019CST是中国标准的时间2.切换成UTC时间[root@localhost ~]# ln -sf /usr/share/zoneinfo/UTC /etc/localtime[root@localhost ~]# dateThu Aug 16 08:01:01 UTC 20...

2019-11-05 13:54:58 533

原创 Spark--06 SparkStreaming kafka消息堆积

问题:当应用由于各种其它因素需要暂停消费时,下一次再次启动后就会有大量积压消息需要进行处理,此时为了保证应用能够正常处理积压数据,需要进行相关调优。另外对于某个时刻,某个topic写入量突增时,会导致整个kafka集群进行topic分区的leader切换,而此时Streaming程序也会受到影响。所以针对以上问题我们进行了如下调优: spark.streaming.concurr...

2019-09-24 10:21:20 1145

原创 JVM--01 JVM结构划分

JVM内存划分为堆内存和非堆内存,堆内存分为年轻代(Young Generation)、老年代(Old Generation),非堆内存就一个永久代(Permanent Generation)。 年轻代又分为Eden和Survivor区。Survivor区由FromSpace和ToSpace组成。Eden区占大容量,Survivor两个区占小容量,默认比例是8:1:1。 堆内存用途:存放的...

2019-09-16 16:01:56 204

原创 Linux--01 修改时区(硬件时间和系统时间的同步)

重新启动系统,硬件时间会读取系统时间,实现同步,但是在不重新启动的时候,需要用hwclock或clock命令实现同步。硬件时钟与系统时钟同步:# hwclock --hctosys(hc代表硬件时间,sys代表系统时间)或者# clock --hctosys系统时钟和硬件时钟同步: # hwclock --systohc 或者 # clock --systohc针对中国时区...

2019-09-16 14:50:52 498

原创 Hadoop-- HBase集群机房断电导致region offline故障解决

环境描述:hdfs+zookeeper+hbase错误描述:hdfs 存在部分 corrupt replica blocks/missing blocks/under replicated blockesBlock Errors 31corrupt replica / 30missing / 31 under replicatedhbase存在大量的offline regi...

2019-09-04 15:20:49 607

原创 Spark--05 DataFrame基本操作

val conf = new SparkConf().setMaster("local").setAppName("JSONLoad") val sc = new SparkContext(conf) val sqlContext = new SQLContext(sc) val initFrame = sqlContext.read.json("E:\\...

2019-07-17 12:39:39 132

原创 Windows--01 解决内存不能writen情况(tomcat+jdk)

1、打开“开始”菜单——运行中输入cmd 回车,在命令提示符下输入“for %1 in (%windir%system32*.ocx) do regsvr32 /s %1”;完了后,再输入以下内容并回车 “for %1 in (%windir%system32*.dll) do regsvr32 /s %1”2、...

2019-07-12 15:02:08 180

原创 Hadoop--时间同步

一、安装NTP服务[root@ntp ~]# rpm -qa|grep ntpntpdate-4.2.6p5-1.el6.centos.x86_64ntp-4.2.6p5-1.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarch使用RPM工具查询,如果有上面的三个包,则系统已经安装了NTP服务;如果没有,则挂载安装镜像,...

2019-07-08 18:09:59 756

转载 Redis--02 Redis Cluster部署、管理和测试

背景: Redis 3.0之后支持了Cluster,大大增强了Redis水平扩展的能力。Redis Cluster是Redis官方的集群实现方案,在此之前已经有第三方Redis集群解决方案,如Twenproxy、Codis,与其不同的是:Redis Cluster并非使用Porxy的模式来连接集群节点,而是使用无中心节点的模式来组建集群。在Cluster出现之前,只有Sentinel...

2019-07-02 15:57:11 286

转载 MQ--01为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比

MQ是什么?队列是什么,MQ我们可以理解为消息队列,队列我们可以理解为管道。以管道的方式做消息传递。场景: 1.其实我们在双11的时候,当我们凌晨大量的秒杀和抢购商品,然后去结算的时候,就会发现,界面会提醒我们,让我们稍等,以及一些友好的图片文字提醒。而不是像前几年的时代,动不动就页面卡死,报错等来呈现给用户。 在这业务场景中,我们就可以采用队列的机制来处理,因为同时结...

2019-06-04 14:25:39 252

转载 MySQL--07MySQL 主从同步延迟的原因及解决办法

Mysql主从基本原理,主要形式以及主从同步延迟原理 (读写分离)导致主库从库数据不一致问题的及解决方案 一、主从数据库的区别从数据库(Slave)是主数据库的备份,当主数据库(Master)变化时从数据库要更新,这些数据库软件可以设计更新周期。这是提高信息安全的手段。主从数据库服务器不在一个地理位置上,当发生意外时数据库可以保存。(1) 主从分工其中Master负责写操作的负...

2019-01-23 11:14:40 227

原创 Linux--tomcat非root用户开机自启

1、安装JDK和tomcat,都可以通过解压缩文件直接安装,配置相关环境变量最后通过 source /etc/profile 实现当前文件有效,可以通过echo $JAVA_HOME和java -version测试环境变量是否成功例如:2、将root解压缩的/opt/software/apache-tomcat-7.0.88赋给用户tomcat,命令:chown -R tomc...

2019-01-11 12:47:17 1919

转载 ES07--性能调优03(全面考量)

ElasticSearch性能优化主要分为4个方面的优化。 一、服务器部署 (相关节点用户策略调整)1、增加1-2台服务器,用于负载均衡节点 elasticSearch的配置文件中有2个参数:node.master和node.data。这两个参 数搭配使用时,能够帮助提供服务器性能。 1.1> node.master: false    node.data: true       ...

2019-01-09 09:49:59 608

转载 MySQL-06 mysql事务和锁InnoDB

背景 MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信,让我帮助解决一些死锁的问题。本文,准备就MySQL/InnoDB的加锁问题,展开较为深入的分析与讨论,主要是介绍一种思路,运用此思路,拿到任何一条SQL语句,都能完整的分析出这条语句会加什么锁?会有什么样的使用风险?甚至是分析线上...

2018-11-15 09:36:12 144

转载 BA--02 fastjson重复序列化(避免重复引用序列化时显示$ref)

什么是重复/循环引用简单说,重复引用就是一个集合/对象中的多个元素/属性同时引用同一对象,循环引用就是集合/对象中的多个元素/属性存在相互引用导致循环。举例说明 重复引用   List<Object> list = new ArrayList<>(); Object obj = new Object(); li...

2018-09-26 13:33:31 2485

原创 ES06--elasticsearch unassigned错误解决(手动处理)

查看集群健康状态:curl -XGET http://localhost:9200/_cluster/health\?pretty 图中显示,有0个分片未分配节点*****************************开始修复************************************1、查看所有分片状态:curl -XGET http://localhost:9...

2018-09-19 09:57:20 4264 1

转载 MySQL--05 触发器Trigger01 引入

一、触发器概念触发器(trigger):监视某种情况,并触发某种操作,它是提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,例如当对一个表进行操作( insert,delete, update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。 触发器创建语法四要素:1.监视地点(...

2018-09-18 10:11:45 257

转载 Tomcat(JVM)监控方法(转帖)

1、Tomcat自带的监控页面     配置详见Tomcat安装配置监控一文,如图所示为监控页面:              2、LoadRunner编写脚本实现Tomcat监控    采用编写VuGen脚本访问Tomcat的Status页面的方式获取性能数据(利用了关联和lr_user_data_point函数),本质上还是使用tomcat自带的监控页面,只是将监控结...

2018-07-26 19:01:40 2768

原创 ES03--性能调优02(文件数、内存、root静默启动)

一、“Too many open files”方式1:发现日志中大量出现这个错误执行curl http:// localhost:9200/_nodes/process\?pretty可以看到"max_file_descriptors" : 4096,官方文档中Make sure to increase the number of open files descriptors on the mac...

2018-06-08 21:02:37 287

原创 Linux MySQL安装-密码找回-防火墙

一、防火墙关闭 1、临时关闭当前防火墙(重启后失效配置)   开启: service iptables start    关闭: service iptables stop   状态: service iptables status   或者   /etc/init.d/iptables status   暂时关闭防火墙:/etc/init.d/iptables stop   重启防火墙:/etc...

2018-05-29 11:07:06 233

转载 网站安全--01 开源漏洞扫描工具

1、Java自动化SQL注入测试工具 jSQL链接:http://www.oschina.net/p/jsql-tooljSQL是一款轻量级安全测试工具,可以检测SQL注入漏洞。它跨平台(Windows, Linux, Mac OS X, Solaris)、开源且免费。2、漏洞评估系统 OpenVAS链接:http://www.oschina.net/p/openvasOpenVAS是开放式漏洞评...

2018-04-27 15:04:18 6034

原创 Python--01 Linux安装坑

一、zipimport.ZipImportError: can't decompress data; zlib not available解决方法:$ tar -xzvf ./Python-3.6.1.tgz$ cd ./Python-3.6.1$ ./configure$ make$ sudo make installFile"/home/lanhaixuan/Python-3.6.1/Lib/...

2018-04-24 16:16:44 338

转载 MySQL01:性能优化调整综述

占用CPU过高,可以做如下考虑:1)一般来讲,排除高并发的因素,还是要找到导致你CPU过高的哪几条在执行的SQL,show processlist语句(根据返回结果的state列进行分析和解决比如kill sleep状态的线程,调整相关表的缓存大小等),查找负荷最重的SQL语句,优化该SQL,比如适当建立某字段的索引;2)打开慢查询日志(开启慢查询日志功能,分析日志,对SQL进行分析),将那些执行...

2018-03-01 10:39:50 150

转载 WebSocket与消息推送

一、Socket简介二、WebSocket简介与消息推送三、WebSocket客户端四、WebSocket服务器端五、测试运行六、小结与消息推送框架6.1、开源Java消息推送框架 Pushlet6.2、开源DotNet消息推送框架SignalR七、代码下载7.1、Java实现的服务器端代码与客户端代码下载7.2、DotNet服务器端手动连接实现代码下载7.3、DotNet下使

2018-01-27 13:21:27 355

原创 Oracle 相关查询整理

1、查询表名及对应表注释内容select * from user_tab_comments c where c.comments is not null;2、查询表及对应字段的注释内容(表字段注释)select * from user_col_comments d where d.table_name ='ORG';3、查询表,并将表字段的英文转为中文注释显示

2018-01-27 11:22:42 151

原创 BA--01 Nginx和Tengine(高并发和负载均衡)

1.     安装依赖yum -y install gcc openssl-devel pcre-develzlib-devel2.     编译三步走./configure \ --prefix=/opt/sxt/soft/tengine-2.1.0/ \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/v

2017-12-15 13:31:31 414

原创 高洪岩--多线程

一、线程状态1)综述:线程终止三种方法:1、使用退出标志,使线程正常退出,也就是当run方法完成线程终止;2、使用stop方法强行终止线程(不推荐使用),因为stop和suspend及resume数据过期方法,可能产生不可预料结果;3、使用interrupt方法中断线程 2)概念、案例及实战引入:Interrupt():该方法使用效果不像for+br

2017-12-11 10:12:15 1631 2

转载 MySQL--04 数据库日志解析及恢复可能性

Mysql日志解析修改Mysql配置Mysql配置地址为:C:\Program Files (x86)\MySQL\MySQL Server 5.5如果无法修改可以把my.ini拷贝出来,修改完后,再拷贝回去!如果配置了Mysql的日志生成路径,但是该目录尚未创建,那么启动会报错!关于Mysql日志splunk内置了两种mysql的日志,分别是mysqld以及mys

2017-11-29 15:54:55 437

转载 MySQL--03MySQL之thread cache

最近突然对MySQL的连接非常感兴趣,从status根据thread关键字可以查出如下是个状态show global status like 'thread%';+-------------------+-------+| Variable_name | Value |+-------------------+-------+| Threads_cached |

2017-11-22 11:29:25 246

转载 Spark--04高级RDD编程详解

The RDD API By ExampleaggregateThe aggregate function allows the user to apply two different reduce functions to the RDD. The first reduce function is applied within each partition to reduce the d

2017-11-13 10:17:34 1009

转载 最近搞Hadoop集群迁移踩的坑杂记

最近一段时间都在搞集群迁移。最早公司的hadoop数据集群实在阿里云上的,机器不多,大概4台的样子,据说每个月要花7000多。从成本的角度,公司采购了4台2手服务器(E5-2420 v2 * 2+96G内存)在办公室自己搭数据集群。虽然说机房条件艰苦,没空调就算了,还有暖气呢,但是机器还是挺不错的,比阿里云32G的的机器强多了,4台大概2万,还不够阿里云烧3个月的,理论上只要能用3个月就已经很划算

2017-11-01 09:03:40 539

转载 eclipse定制化配置调优、初始化配置指南、可以解决启动慢等问题

配置eclipse的jvm参数打开eclipse根目录下的eclipse.ini在最后面加上如下的jvm参数-Xms400m-Xmx1400m-XX:NewSize=128m-XX:MaxNewSize=512m-XX:PermSize=96m-XX:MaxPermSize=128m-server-XX:CompileThreshold=100-XX:+UseParNe

2017-10-16 09:33:23 272

转载 freemarker+Jfreechart生成Word文档(含图片)

这几天再弄一个报表,要统计一些信息最终的部分展示结果如下:基本工具freemarker,jfreechart工程的部分结构如下与生成Word有关的类主要有FreemarkerConfiguration和WordGenerator代码如下:[java] view plain copy import com.bqs.ares.common.u

2017-10-12 11:43:32 1632

转载 java生成word的几种方案

1、Jacob是Java-COMBridge的缩写,它在Java与微软的COM组件之间构建一座桥梁。使用Jacob自带的DLL动态链接库,并通过JNI的方式实现了在Java平台上对COM程序的调用。DLL动态链接库的生成需要windows平台的支持。 2、ApachePOI包括一系列的API,它们可以操作基于MicroSoft OLE 2 Compound Document Format的

2017-10-12 09:29:14 394

转载 Spark--Project Tungsten:让Spark将硬件性能压榨到极限

摘要:对于Spark来说,通用只是其目标之一,更好的性能同样是其赖以生存的立足之本。北京时间4月28日晚,Databricks在其官方博客上发布了Tungsten项目,并简述了Spark性能提升下一阶段的RoadMap。本文编译自Databricks Blog(Project Tungsten: Bringing Spark Closer to Bare Metal),作者Reynold

2017-09-20 09:15:33 448

转载 ES04--ElasticSearch vs Solr 优缺点

查看版本,进http://archive.apache.org/dist/。        ElasticSearch vs Solr 检索速度  当单纯的对已有数据进行搜索时,Solr更快。elasticsearch默认是将索引放到内存中。其中一个节点挂掉了并不影响整个ES集群的正常运行。                  当实时建立索引时, Solr会产生i

2017-09-18 13:41:21 976

转载 Thread--01在线程池使用Callable和Runnable的区别以及如何关闭线程

一、区别总结:Callable定义的方法是call,而Runnable定义的方法是run。Callable的call方法可以有返回值,而Runnable的run方法不能有返回值,这是核心区别。Callable的call方法可抛出异常,而Runnable的run方法不能抛出异常。二、返回值的区别  他们的核心区别是Callable可以返回Feature的对象,这个对象可以了解线程的运

2017-08-29 13:46:48 672

转载 NIO--02基本API实现

Java NIO Buffer当我们需要与 NIO Channel 进行交互时, 我们就需要使用到 NIO Buffer, 即数据从 Buffer读取到 Channel 中, 并且从 Channel 中写入到 Buffer 中.实际上, 一个 Buffer 其实就是一块内存区域, 我们可以在这个内存区域中进行数据的读写. NIO Buffer 其实是这样的内存块的一个封装, 并提供了一些操

2017-08-23 13:23:46 188

美团数据平台及数仓建设实践

美团数据平台及数仓建设实践,整理美团相关产线数据平台和数仓建设

2023-12-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除