自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (3)
  • 收藏
  • 关注

转载 go mod replace 解决 fork 项目的引入问题(module declares its path as Axx, but was required as Bxx)

本文转自go mod replace 解决 fork 项目的引入问题(module declares its path as Axx, but was required as Bxx)_zhuxinquan的博客-CSDN博客在日常开发中,经常遇到需要fork别人的项目然后修改某些文件后用到自己的其他项目中,会碰到这类型的问题,经本人实际测试,该方案可行...

2022-02-17 11:24:23 652

转载 自动化弹性伸缩如何支持百万级核心错峰混部 | 架构沙龙回顾

5 月 30 日,字节跳动技术沙龙 | 基础架构专场进行了在线直播。我们邀请到了字节跳动基础架构团队资深研发工程师邵伟、江帆和大家进行分享交流。本次沙龙给大家分享的主题是《大规模混合部署项目在字节跳动的落地实践》,希望这次的分享能够带给大家一些我们对混部的思考。沙龙分享的内容将会围绕以下问题来进行: 首先是字节跳动为什么想要开启混部,它产生的背景是什么样的,字节内部的业务形态有什么样的特征使我们能够开启大规模的混部? 我们具体做了哪些事情来支持混部的顺利开启和落地,在其中遇到哪...

2020-06-17 10:37:17 551

转载 深入解析String#intern

在 JAVA 语言中有8中基本类型和一种比较特殊的类型String。这些类型为了使他们在运行过程中速度更快,更节省内存,都提供了一种常量池的概念。常量池就类似一个JAVA系统级别提供的缓存。8种基本类型的常量池都是系统协调的,String类型的常量池比较特殊。它的主要使用方法有两种:直接使用双引号声明出来的String对象会直接存储在常量池中。 如果不是用双引号声明的String对象,可以使用String提供的intern方法。intern 方法会从字符串常量池中查询当前字符串是否存在,若不存在就

2020-06-09 15:40:33 245

转载 推荐系统之数据与特征工程

推荐系统是机器学习的一个子领域,并且是一个偏工程化、在工业界有极大商业价值的方向。大量应用于提供toC类产品的互联网企业服务中,通过推荐系统为用户提供精准的个性化服务。推荐系统通过推荐算法来为用户生成个性化推荐结果,而推荐算法依赖数据输入来构建算法模型。本篇文章我们来讲解推荐系统所依赖的数据,怎么处理这些数据,让数据转换成推荐算法可以直接使用的形式,最终我们就可以构建高效、精准的推荐模型,这些处理好的适合机器学习算法使用的数据即是特征,而从原始数据获得特征的过程就是特征工程。具体来说,我们会从推荐算

2020-06-03 17:07:53 1817

转载 AB实验在滴滴数据驱动中的应用

导读:在各大互联网公司都提倡数据驱动的今天,AB实验是我们进行决策分析的一个重要利器。一次实验过程会包含多个环节,今天主要给大家分享滴滴实验平台在分组环节推出的一种提升分组均匀性的新方法。本文首先会介绍一下滴滴AB实验的相关情况,以及在实验分组环节中遇到的问题。然后介绍目前在实验对象分组方面的通用做法,以及我们对分组环节的改进。最后是新方法的效果介绍。1.AB实验概述互联网公司中,当用户规模达到一定的量级之后,数据驱动能够帮助公司更好的决策和发展。在滴滴各个团队中,我们经常会面临不同的产..

2020-06-02 10:36:46 647

转载 使用Go语言上线TensorFlow模型

昨天搞了一天用Go语言部署TensorFlow模型,把整个过程记录一下,以备大家参考(现在没有题图,以后在搞一个图)。首先我们要有一个已经保存好的TensorFlow模型,也就是.pb文件。这个文件固化了计算图和权重,Go语言只需要根据这个代码跑相应的Session就行了。关于如何产生.pb文件,如果大家有兴趣的话可以私信我,我可以根据大家的需求情况写一份文档。具体部分可以参见tf.saved_model。然后编译TF的源代码得到libtensorflow.so和libtensorflow_fram

2020-05-28 16:45:26 1049

原创 Netflix 的推荐系统架构图

2020-05-28 15:22:50 966

转载 elastic-job使用

项目中用到了elastic-job,自己用的时候也是根据别人的例子复制下来,直接模仿用的,一直也没去理解它的工作原理,一知半解的,各个参数意思也不是很懂,然后今天突然想了解下它的工作原理,看了官网,以及网上的一些文章,在这里做个记录。elastic-job是什么?elastic-job是什么呢?下面是摘自官网的话:Elastic-Job是一个分布式调度解决方案,由两个相互独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。Elastic-Job-Lite定位为轻量

2020-05-21 20:05:03 724 1

转载 如何构建A/B测试灰度系统

导读:不管在精益创业还是增长黑客理论中,A/B测试作为一种成熟的数据驱动产品优化的科学方法,其核心意义并不在于某一次试验的成功或者失败,而是这种通过试验和数据驱动的产品不断进化过程。A/B测试系统就是一套能将A/B测试方法标准化的工具,通过产品化后,可以降低用户使用门槛,提高A/B测试迭代速度,规范试验流程减少人为操作过程中所犯错误,还可以沉淀不同的数据和策略。01. A/B测试系统核心功能虽然A/B测试可以分为界面类、功能类、人群类以及算法类,但其整体流程、核心功能基本一致,故可以设计一个通用的A

2020-05-21 14:13:05 1178

转载 分布式机器学习框架与高维实时推荐系统

分享嘉宾:刘一鸣第四范式编辑整理:白木其尔、Hoh内容来源:第四范式 | 先荐出品平台:DataFunTalk注:转载请在后台留言“转载”。导读:随着互联网的高速发展和信息技术的普及,企业经营过程中产生的数据量呈指数级增长,AI 模型愈发复杂,在摩尔定律已经失效的今天,AI 的落地面临着各种各样的困难。本次分享的主题是分布式机器学习框架如何助力高维实时推荐系统。机器学习本质上是一个高维函数的拟合,可以通过概率转换做分类和回归。而推荐的本质是二分类问题,推荐或者不推荐,即...

2020-05-21 14:08:02 560

转载 做推荐系统之余,我们该思考什么?

文章作者:姚凯飞编辑整理:Hoh注:本文是作者在 Club Factory 工作时的分享。导读:推荐系统的概念这几年非常火爆,给很多公司带来了实实在在的收益,但如果想将其作为公司增长飞轮中的一环,其实背后有非常多的点需要我们深思挖掘。本文将首先介绍业务以及从宏观和微观角度看增长,再者结合具体案例介绍宏观与微观的关注要点,最后再进行下总结。01业务介绍1. 推荐产品形态我们是一家出海 2C 电商,目前每日有流量和订单的国家和地区超过30个,主要的用户来自印度,是...

2020-05-21 14:04:24 433

原创 二分查找O(log(min(m,n)))解决两个有序数组求中位数

题目解析:  这个题目简单来说就是如果将两个已经排序的数组合并为一个虚拟数组,求出这个虚拟数组的中位数即可。解题思路:  1、这道题最主要的就是切(cut),怎么将数组切成合适的两段是关键,对于一个数组来说在数组的中间将其切成两段,这时候就要分情况讨论,如果是偶数个,中位数就是切点的两边第一个数的平均值,如果是奇数个,中位数就是切点右边的第一个数,比如说1 2 3 4 5,在中间的位置将这个数组切成两段:1 2 \ 3 4 5,很显然,中位数就是3,如果是1 2 3 4,那么就切成了1 2 \ 3

2020-05-15 17:44:46 417

原创 redis5.0排查latency问题

生产环境20个节点规模采用redis5.0自带的cluter方案的redis集群,偶尔出现尖刺。经过排查,排除网络波动影响(网络是正常的),随即将redis自带的latency监控打开(latency监控默认处于关闭状态)过了一段时间,发现服务又有尖刺,这时去查看redis latency监控,发现如下:从上图看出,都是由于AOF持久化导致的问题,但redis生产集群采用的都是appendfsync everysec策略,考虑了下修改一下no-appendfsync-on-r..

2020-05-09 15:38:27 735

转载 生产java服务CPU异常飙高问题解决

线上有一个非常繁忙的服务的 JVM 进程 CPU 经常跑到 100% 以上,下面写了一下排查的过程。通过阅读这篇文章你会了解到下面这些知识。Java 程序 CPU 占用高的排查思路 可能造成线上服务大量异常的 log4j 假异步 Kafka 异步发送的优化 On-CPU 火焰图的原理和解读开始尝试JVM CPU 占用高,第一反应是找出 CPU 占用最高的线程,看这个线程在执行什么,...

2020-05-07 17:53:55 1671

原创 k8s pod cpu限制limit过小导致的问题

笔者负责的一个很重量级的服务,并发量大且处理逻辑复杂。之前pod的资源限制设置如下:、cpu limit 设置为3000m的时候,系统P99、P999耗时都比较低。直到有一天,笔者突发心血来潮,想着3000m可能太高了点就把资源限制改为如下:cpu limit由3000m降为2000m , 改完之后那一周,系统P99、P999耗时明显比之前高出一些,遂再次将资源设...

2020-05-07 11:29:30 2443

原创 Goland环境下同一个package下出现undefined

本人用Goland调试github.com/oliver006/redis_exporter源码的时候,竟然出现下列编译错误随后发现函数NewRedisExporter、结构体Options均是处于main包下exporter.go文件中这就很奇怪了,处于同一个包下肯定是可以找到的,随后用go build .命令跑了一下,确实是可以编译成功的,这个时候我就怀疑是G...

2020-04-03 19:25:55 4107 2

原创 二分查找实现开平方算法Go语言版

二分查找实现开平方,精确到小数点后6位

2020-03-05 11:03:04 256

原创 二分查找的Go语言实现

1、不存在重复元素2、存在重复元素,查找最后一个等于目标值的元素

2020-03-04 15:29:50 235

原创 Redis数据类型与底层数据结构对照

底层数据结构 zset有序集合 ziplist skiplist

2020-02-12 11:15:32 169

原创 Redis数据结构之简单动态字符串

redis简单动态字符串由sds.h/sdshdr数据结构定义:

2020-02-07 16:05:10 142

原创 Redis源码解读之服务器redisServer有关rdb

这篇文章是来解读redis服务器rdb持久化,源码位于redis.h/redisServerdirty记录了上次save之后数据库被修改的次数lastsave记录了上次完成save的时间

2020-02-05 17:13:09 127

原创 Redis数据结构之双端链表

redis双端链表linkedlist由listNode、list两个数据结构定义源码adlist.h/listNode源码adlist.h/list

2020-02-03 18:29:25 158

原创 Redis数据结构之整数集合

redis整数集合由intset数据结构定义源码intset.h/intsetintset只会升级,不会降级,即如果往int16_t或者int32_t的intset集合中添加一个int64_t的元素时会整体升级到int64_t,但永远不会发生降级...

2020-02-03 17:20:27 153

原创 Redis数据结构之跳跃表

redis跳跃表由zskiplistNode和zskiplist两个数据结构定义:源码redis.h/zskiplistNode源码redis.h/zskiplist

2020-02-03 17:14:56 116

原创 Go版本升级到1.13后拉取私有module依赖出现verifying 410 gone

Go语言版本升级到1.13后拉取私有gitlab仓库module依赖竟然出现verifying 410 gone翻阅Golang官方文档得知,是需要设置GOPRIVATE环境变量,这个变量需要指向gitlab私有仓库windows10通过添加环境变量GOPRIVATE=私有仓库域名即可,顺利解决问题...

2020-01-15 19:35:59 1975

原创 快速排序的Go语言实现

func Test_QuickSort(t *testing.T) { a := []int{4,0,1,9,5,2,10,30,2,100,800} //a := []int{5,6,8,7,1} quickSort(a,0,len(a)-1) fmt.Println(a)}func quickSort(A []int,start,end int) {...

2020-01-14 20:00:22 198

转载 Nginx负载均衡中4层代理和7层代理的区别

1.4层代理和7层代理什么意思?这里的层是OSI 7层网络模型,OSI 模型是从上往下的,越底层越接近硬件,越往上越接近软件,这七层模型分别是物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。4层是指传输层的 tcp / udp 。7层是指应用层,通常是http 。2.代理原理:4层用的是NAT技术。NAT英文全称是“Network Address Transl...

2020-01-13 15:20:51 2768

原创 Nginx rewrite post请求变get请求解决

笔者最近碰到一个nginx问题,我们需要将http://t16.niiu.com/gateway/abtest-service/api/shenzhen/shoulei/7(该方法是POST) rewrite成http://t16.niiu.com//api/shenzhen/shoulei/7 , 因为微服务提供的请求地址就是:/api/shenzhen/shoulei/7 。其中,/a

2018-04-10 11:26:48 13630 1

原创 ActiveMQ的消息签收机制

消费者客户端成功接收一条消息的标志是:这条消息被签收。         消费者客户端成功接收一条消息一般包括三个阶段:         1、消费者接收消息,也即从MessageConsumer的receive方法返回         2、消费者处理消息         3、消息被签收        其中,第三阶段的签收可以有ActiveMQ发起,也可以由消费者客户端发起

2017-11-13 22:29:27 2812 1

原创 Tomcat7.0.42源码研读之Session管理(八)

我们在写Java Web程序的时候,往往需要用到Session保存用户登录状态。       在需要用到Session的时候一般都是调用HttpServletRequest的getSession() 或者getSession(boolean create)方法,那Tomcat的Session是怎么运作的呢?       程序实际运行过程中,HttpServletRequest的实现类是or

2017-11-10 15:27:24 428

原创 网络抓包工具Wireshark如何抓取本机包

笔者在很久之前用过其他的网络抓包工具,最近想着使用鼎鼎大名的网络抓包工具Wireshark,但是一开始始终无法抓取到本机网络包,telnet localhost 8080这种都没法抓取,查过资料之后才知道,  windows系统没有提供本地回环网络的接口,用wireshark监控网络的话只能看到经过网卡的流量,看不到访问localhost的流量,因为wireshark在windows系统上默认使用

2017-11-08 17:12:02 10779 4

原创 Tomcat7.0.42源码研读之BIO(七)

Tomcat8.0之前的版本,Connector默认使用BIO方式监听客户端Socket请求,由JioEndpoint类负责处理               服务端ServerSocket绑定好端口,然后开始启动                Tomcat默认启动一个Acceptor线程去接受客户端Socket请求,采用轮询的方式进行

2017-11-07 21:55:44 379

原创 Tomcat7.0.42源码研读之网络框架Coyote(六)

Tomcat的最重要的两大组件就是网络框架Coyote和Servlet容器Catalina,前者封装了底层的网络通信(Socket请求及响应),后者负责处理具体的业务。

2017-11-06 16:32:00 406

原创 JDK8中HashMap源码详解

笔者一直很好奇HashMap插入、扩容究竟是怎么进行的,专门研究了下JDK1.8的源码,下面专门进行讲解。       A、插入元素(put)       1、插入第一个元素:

2017-11-05 22:27:27 394

原创 如何调试JDK1.8源码(查看变量值、对.class文件打断点调试)

笔者一直想搞清楚HashMap插入数据、扩容时的整个过程,看源码没法调试总是不是那么方便,所以就弄了一套可以调试JDK源码的方案。    开发环境:JDK8+Eclipse    说明:调试HashMap的 public V put(K key, V value) 方法并查看key的值时不能显示变量的值,原因在于oracle提供的jre中rt.jar 不带debug信息。orcale在

2017-11-05 22:01:52 1880

原创 Tomcat7.0.42源码研读之类加载器(五)

Tomcat作为一款通用型的Web服务器,在类加载器上面应该要满足一下几点特性:         1、资源隔离性:如果一个Tomcat实例下部署了多个Web应用,有的Web应用使用了Spring3,有的Web应用使用了Spring4,如果Tomcat使用一个类加载器加载,那么Tomcat很可能会因为Jar包冲突而无法启动。         2、灵活性:如果一个Tomcat实例下部署了多个W

2017-11-05 20:14:22 343

原创 Regular Expression算法研究

算法要求如下:           给出的算法实现如下:             这个算法的时间复杂度为多少呢?

2017-11-05 11:56:32 299

原创 Tomcat7.0.42源码研读之组件说明(四)

Tomcat涉及到的组件如下表所示:             组件名称说明 Server表示整个Servlet容器,Tomcat运行环境中只有一个Server实例 Service表示一个或多个Connector的集合,这些Connector共享同一个Container实例来处理其请求,在同一个Tomcat实例内可以包含多个Se

2017-11-04 22:40:01 292

原创 Tomcat7.0.42源码研读之网络连接器Connector(三)

Tomcat中Connector代表了网络连接器,连接器支持HTTP、AJP协议,还支持多种I/O方式:BIO、NIO、APR。一个Connector应该要做到这几个功能:     1、监听服务器端口,获取来自客户端的请求     2、将请求数据按照指定协议进行解析     3、根据请求地址寻找合适的容器处理     4、将服务端响应返回给客户端     基于此

2017-11-04 17:11:23 428

原创 Tomcat7.0.42源码研读之职责链模式Pipeline与Valve(二)

一个良好甚至优秀的系统,架构上一定要做到可伸缩性和可扩展性,Tomcat在这个方面是个非常好的榜样,它还保证了每个组件的灵活性,最大程度提高了组件的可扩展性。        为了增强组件的灵活性和可扩展性,Tomcat采用了职责链模式来实现客户端请求的处理,Tomcat中每个Container组件都是通过执行一个职责链来完成具体的请求处理。为此,Tomcat定义了Pipeline(管道)和Va

2017-11-04 16:33:47 421

jquery界面控件

jquery开发利器,javascript特别好用的函数库

2013-07-19

酒店订餐系统

SSH架构开发的一个酒店订餐系统,包括了Struts_Spring+Hibernate,后台采用的是MySql数据库

2013-07-19

C#网上图书购物源码

一个较全面的网上图书购物系统! 包括完整的登录系统 ,账号验证系统,付费系统哦!

2011-05-26

空空如也

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

TA关注的人

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