摘要: 一旦你的程序docker化之后,你会遇到各种问题,比如原来采用的本地记日志的方式就不再方便了,虽然你可以挂载到宿主机,但你使用 --scale 的话,会导致 记录日志异常,所以最好的方式还是要做日志中心化,另一个问题,原来一个请求在一个进程中的痉挛失败,你可以在日志中巡查出调用堆栈,但是docker阅读全文
posted @ 2018-09-18 08:18 一线码农 阅读(2351) 评论(23) 编辑
摘要: 在很久之前net还只能在windows上部署的时候,或许很多创业公司的朋友发布项目还都是人肉部署,反正windows都是可视化的界面,拖拖拉拉,开开关关还不 是特别麻烦。。。现如今你的项目需要在linux上部署,可惜的是再也没有什么可视化的界面给你,全在xshell上操作,如果在xshell上部署个阅读全文
posted @ 2018-09-08 11:04 一线码农 阅读(1605) 评论(7) 编辑
摘要: 一: 问题提出 现如今大家写的netcore程序大多部署在linux平台上,而且服务程序里面可能会做各种复杂的操作,涉及到多数据源(mysql,redis,kafka)。成功部署成后台 进程之后,你以为这样就万事大吉了? 却不知当你更新代码时,暴力的kill掉这个进程导致你的业务出现数据不一致,业务阅读全文
posted @ 2018-09-03 08:36 一线码农 阅读(2125) 评论(21) 编辑
摘要: 一般情况下,aspnetcore发布后的默认端口是5000,这个大家都知道,而且默认骨架代码中没有看到任何让你输入的ip地址和端口号,但作为程序员的我们,不希望 被框架所管制,那如何实现默认端口的修改呢? 骨架代码: 发布如下: 一:解决办法1(UseUrls) 骨架代码就那么几行,很容易在这个IW阅读全文
posted @ 2018-09-01 08:34 一线码农 阅读(2017) 评论(19) 编辑
摘要: 先结果导向,来看我在kibana dashborad中制作的几张监控图。 一:先睹为快 dashboard1:监控几个维度的日志,这么点日志量是因为把无用的清理掉了,而且只接入了部分应用。 <1> 每日日志总数。 <2> 每日日志错误数,从log4net中level=ERROR抠出来的。 <3> 每阅读全文
posted @ 2018-06-13 08:00 一线码农 阅读(1987) 评论(3) 编辑
摘要: 很多小步快跑的公司,开发人员多则3-4个,面对巨大业务压力,日连夜的赶着上线,快速试错,自然就没时间搭建一些基础设施,比如说logCenter,但初期 项目不稳定,bug又多,每次都跑到生产去找日志,确实也不大方便,用elk或者用hadoop做日志中心,虽然都是没问题的,但基于成本和人手还是怎么简化阅读全文
posted @ 2018-06-01 08:41 一线码农 阅读(2967) 评论(6) 编辑
摘要: 最近在做一个人群标签的项目,也就是根据客户的一些交易行为自动给客户打标签,而这些标签更有利于我们做商品推荐,目前打上标签的数据已达5亿+, 用户量大概1亿+,项目需求就是根据各种组合条件寻找标签和人群信息。 举个例子: 集合A: ( 购买过“牙膏“的人交易金额在10-500元并且交易次数在5次的客户阅读全文
posted @ 2018-05-29 16:32 一线码农 阅读(2280) 评论(11) 编辑
摘要: 说起缓存,大家可能口若悬河,各种类型的缓存都能一一分析,但在net下找到一款合适的Disk Cache貌似还是有一点难度的。 一:背景 事情是这样的,最近的一个项目中,需要在web端绘制一些报表,因为报表的基础数据源都是全内存式的,所以内存相对我们来说是比较吃紧的,大家可能 大家知道,比如一些散点图阅读全文
posted @ 2018-03-27 08:21 一线码农 阅读(2115) 评论(9) 编辑
摘要: 事情是这样的,在一个新项目中引入了fastdfs,用这玩意做一些小数据的存储还是很方便的,然后在nuget上就找到了一个FastDFS的sdk,如下图: 一眼就看到了这个top1的sdk,应该会比较靠谱。。。简单的在项目中应用了一下没啥问题就忽悠上线了,然后就悲剧了,测试那边反馈说上传了一个 人群,阅读全文
posted @ 2018-03-25 20:17 一线码农 阅读(2097) 评论(5) 编辑
摘要: 在之前一篇使用nginx搭建高可用的解决方案的时候,很多同学会问,如果nginx挂掉怎么办,比如下面这张图: 你可以清楚的看到,如果192.168.2.100这台机器挂掉了,那么整个集群就下线了,这个问题该怎么解决呢??? 简单的想想确实不大好处理,因为你 的webBrowser总得要访问一个ip地阅读全文
posted @ 2018-03-10 22:04 一线码农 阅读(3022) 评论(5) 编辑
摘要: 首先说一下背景,在双十一的时候,我们系统接受X宝的订单推送,同事原先的实现方式是使用redis的List作为推送数据的承载,在非大促的场景下, 一切运行正常,内存占用大概3-4G,机器是16G内存。由于提前预计不足,在双十一来临的时候,订单瞬时量达到了平时的10X倍,内存非常吃紧,情况算 是非常紧急阅读全文
posted @ 2017-12-02 20:26 一线码农 阅读(4488) 评论(10) 编辑
摘要: 在我们开发项目的时候,经常会遇到大块数据的问题(2M-100M),比如说保存报表中1w个人的ID号,他就像一个肿瘤一样,存储在服务器哪里都 觉得恶心,放在redis,mongodb中吧,一下子你就会收到报警,因为内存满了。。。放在mysql吧???你还得建立一个text字段,和一些小字段混在一起, 阅读全文
posted @ 2017-11-30 12:24 一线码农 阅读(4281) 评论(7) 编辑
摘要: 在项目初期的时候,大家都是赶着上线,一般来说对日志没有过多的考虑,当然日志量也不大,所以用log4net就够了,随着应用的越来越多,日志散 落在各个服务器的logs文件夹下,确实有点不大方便,这个时候就想到了,在log4net中配置 mysql的数据源,不过这里面有一个坑,熟悉log4net的同学知阅读全文
posted @ 2017-11-29 09:57 一线码农 阅读(29664) 评论(10) 编辑
摘要: 最近有个需求,需要整合所有店铺的数据做一个离线式分析系统,曾经都是按照店铺分库分表来给各自商家通过highchart多维度展示自家的店铺经营 状况,我们知道这是一个以店铺为维度的切分,非常适合目前的在线业务,这回老板提需求了,曾经也是一位数据分析师,sql自然就溜溜的,所以就来了 一个以买家维度展示阅读全文
posted @ 2017-11-25 12:54 一线码农 阅读(1903) 评论(0) 编辑
摘要: 很多情况下基于wcf的复杂均衡都首选zookeeper,这样可以拥有更好的控制粒度,但zk对C# 不大友好,实现起来相对来说比较麻烦,实际情况下,如果 你的负载机制粒度很粗糙的话,优先使用nginx就可以搞定,既可以实现复杂均衡,又可以实现双机热备,以最小的代码量实现我们的业务,下面具体分享下。 一阅读全文
posted @ 2017-10-22 09:26 一线码农 阅读(5950) 评论(22) 编辑