SF
微店技术团队
微店技术团队
注册登录
关注博客
注册登录
主页
关于
RSS
微店大数据开发平台架构演进
微店技术
2017-03-08
阅读 4 分钟
5.5k
《论语·卫灵公》有云:“工欲善其事,必先利其器。“ 意欲警示世人:要做好一件事,准备工作非常重要。简单来说,与其着急忙慌的开始做一件事,不如沉下心来仔细思考下如何做这件事,毕竟从上海到北京,就算晚出发一天,一个开汽车的也比一个徒步的要早到目的地。今天跟大家分享微店大数据平台诞生的背景以及含有的功能特...
微店AB实验平台架构演进
微店技术
2016-11-22
阅读 2 分钟
9.5k
随着微店业务的蓬勃发展,各种业务系统纷纷上线,各类推荐、搜索调优算法应运而生。微店AB测试平台Flood诞生于核心推荐和搜索系统,最初想解决的问题也很简单,比如:哪种搜索精排算法比较好、哪种推荐策略带来的业务转化率更高。
Telegraf & Kapacitor, 来自Influxdata的套路
爱点赞的胖虎
2016-11-17
阅读 4 分钟
21k
InfluxDB推出了的正式版V1.0版本(最新版本为1.1),随之而来还有Telegraf、Chronograf、Kapacitor等多个产品。InfluxDB也推出了企业版,并推出了InfluxCloud的云服务,这阵势,是要承包指标采集、分析、画图等时序数据库上下游的生意,有点模仿ELK套件的意思,今天我们就来说一下这里面的套路。
如何在Redis中实现事务
爱点赞的胖虎
2016-11-09
阅读 5 分钟
11.9k
事务(Transaction) ,是指作为单个逻辑工作单元执行的一系列操作。事务必须满足ACID原则(原子性、一致性、隔离性和持久性)。简单来说,事务可能包括1~N条命令,当这些命令被作为事务处理时,将会顺序执行这些命令直到完成,并返回结果,如果中途有命令失败,则会回滚所有操作。举个例子:
JMXtrans + InfluxDB + Grafana实现Kafka性能指标监控
爱点赞的胖虎
2016-11-04
阅读 7 分钟
17.6k
架构 一般系统监控通常分为3部分: 数据采集 分析与转换 展现(可视化) 数据采集 对于前端应用,一般需要埋点,对用户的行为进行记录。 如果不埋点,则需要通过Pagespeed、PhantomJS这样的工具去模拟用户行为进行测试。后端的系统通常有自己的性能指标。我们可以通过命令/脚本的方式进行采集。 JMX(Java Management Ex...
MySQL慢sql分析及优化
爱点赞的胖虎
2016-08-26
阅读 7 分钟
19.9k
注:由于在MySQL日常查询中,查询类型的语句占慢sql的大部分,因此本文仅针对query类型的sql进行阐述,modify类型会单独分析。
分布式任务队列Celery
爱点赞的胖虎
2016-08-12
阅读 5 分钟
12.9k
分布式任务队列Celery Celery (芹菜)是基于Python开发的分布式任务队列。它支持使用任务队列的方式在分布的机器/进程/线程上执行任务调度。 结构 核心部件 broker 消息队列,由第三方消息中间件完成 常见有RabbitMQ, Redis, MongoDB等 worker 任务执行器 可以有多个worker进程 worker又可以起多个queue来并行消费消...
Grafana 图表保存方案
爱点赞的胖虎
2016-07-19
阅读 3 分钟
24.2k
InfluxDB作为时序数据库,一般保存的数据比较有限,为了控制数据量,一般都需要设置RetentionPolicy来做数据的定期清理。那么问题来了,我们如何保存和提取历史数据?
InfluxDB引擎浅析
爱点赞的胖虎
2016-07-15
阅读 3 分钟
23.8k
InfluxDB是一款Go语言写的时序数据库。时序数据库主要用于存储基于时间序列的指标数据,例如一个Web页面的PV、UV等指标,将其定期采集,并打上时间戳,就是一份基于时间序列的指标。时序数据库通常用来配合前端页面来展示一段时间的指标曲线。
HTTPS 改造初探
微店技术
2016-07-13
阅读 4 分钟
12.4k
今年的3月开始,我们启动了 HTTPS 改造项目,并首先在微店买买和交易下单两个业务上进行试点。这次试点,一是为全站 HTTPS 改造进行全面的技术摸底,同时也是要沉淀出通用的解决方案,让后续的全站 HTTPS 快速推进。线上效果可点击链接 微店买买h5,购物车h5,下单h5,或下载最新版口袋购物APP查看。
python中包引入遇到的问题
爱点赞的胖虎
2016-06-22
阅读 1 分钟
4.1k
最近在用python的flask时候发现一点问题,代码组织如下 {代码...} 按照python的约定,app作为一个包(package),引入到run.py当中 {代码...} 在app/__init__.py中加入需要引入的包 {代码...} 按照这样的结构运行整个项目是ok的 operations.py 写了一些后台任务的逻辑,其中有一些对象是从__init__.py当中引入的 {代码.....
也谈 webpack 及其开发模式
微店技术
2016-06-21
阅读 13 分钟
8.2k
近年来,js开发涌现出了诸多模块化解决方案,例如以在浏览器环境之外(服务端)构建 JavaScript 生态系统为目标而产生的CommonJS规范,从CommonJS社区中独立出来的AMD规范(异步模块定义),还有国人制定的CMD规范等。随着遵循AMD规范的RequireJS的流行,AMD规范在前端界已被广泛认同。后来,随着npm社区的逐渐壮大,Com...
http请求传递参数浅析
爱点赞的胖虎
2016-06-21
阅读 1 分钟
13.5k
直接将参数放在请求url的后面,多个参数之间用&分隔; 参数直接以明文方式传递,最简单的方式。GET、POST都支持 不适合传复杂格式的参数,最不安全
如何打造一个高性能的Hybrid App
微店技术
2016-06-16
阅读 3 分钟
14.5k
在多元化的今天,一个热门的移动app,或多或少都会有内在H5在其中。而对于一个有很多运营场景的app来说,这种情况更常见了。试想一下,如果在一个公司,存在很多native和H5同时需要开发的页面,为了节省开发成本,此时如果只开发H5,就需要考虑native的体验了,而这就是本文的目的,如何让native端拥有像加载本地页面一...
虚拟化实践
微店技术
2016-06-14
阅读 6 分钟
7.2k
这里的虚拟化等于私有云。本文并非虚拟化的科普文章,主要将我们在私有云实践过程中的一些思想和遇到的问题拿出来跟大家讨论分享。我们虚拟化实践包含了传统的基于libvirt协议的KVM以及目前流行的docker。
舌尖上的状态机
微店技术
2016-06-13
阅读 7 分钟
8k
真的猛士,敢于不做设计,直接开始编码——面对业务系统中最复杂的部分:状态模型,有多少程序员就有多少种实现。聊聊状态模型设计上常遇到的问题和解决的思路吧。