摘要:
项目的扩容申请了一台机器,到手之后看一下机器的指标,看到内存使用情况是这样的。 1、查看内存 free cat /proc/meminfo 如果你想得到更加相近的信息可以使用cat /proc/meminfo,直接看硬件的统计数据。 这里我们看到,内存总数total=125G,已使用used=89G 阅读全文
摘要:
熟悉web开发的同学对hook钩子肯定不陌生,通过钩子可以方便的实现一些触发和回调,并且做一些过滤和拦截。 django中的中间件(middleware)就是类似钩子的一种存在。下面我们来介绍一下,并且给出一些实例。 1、Middleware的工作流程 我盗了一个图,看网上很多人用这个图,来源已经追 阅读全文
摘要:
本文介绍如何在springboot项目中集成kafka收发message。 1、先解决依赖 springboot相关的依赖我们就不提了,和kafka相关的只依赖一个spring-kafka集成包 这里我们先把配置文件展示一下 2、Configuration:Kafka producer 1)通过@C 阅读全文
摘要:
如果你看完本文还有兴趣的话,可以看看进阶篇:http://www.cnblogs.com/kangoroo/p/7300433.html 设想你遇到如下场景: 1)高并发 2)请求的执行相当消耗机器资源,流量峰值的时候可能超出单机界限 3)请求返回慢,客户长时间等在页面等待任务返回 4)存在耗时的定 阅读全文
摘要:
1、单机锁 考虑在并发场景并且存在竞态的状况下,我们就要实现同步机制了,最简单的同步机制就是加锁。 加锁可以帮我们锁住资源,如内存中的变量,或者锁住临界区(线程中的一段代码),使得同一个时刻只有一个线程能访问某一个区域。 如果是单实例(单进程部署),那么单机锁就可以满足我们的要求了,如synchro 阅读全文
摘要:
本文介绍如何使用springboot的sheduled实现任务的定时调度,并将调度的任务实现为并发的方式。 1、定时调度配置scheduled 1)注册定时任务 2)启动定时任务 这里就介绍两种配置调度时间的方式: 1)cron表达式 2)fixedRate,调度频率也就是调度间隔 如下代码中设置的 阅读全文
摘要:
现在用redis缓存热数据越来越常见了,甚至一些配置,开关等等的东西也写到redis里。原因就是redis简单高效。redis里的数据也越来越重要了,例如一些业务的中间数据会暂时存放在redis里,所以限制redis的访问还是很有必要。 本文通过几个手段说一下生产环境中redis的访问权限控制。 1 阅读全文
摘要:
Elasticsearch的查询语言(DSL)真是不好写,偏偏查询的功能千奇百怪,filter/query/match/agg/geo各种各样,不管你是通过封装JSON还是通过python/java的api进行封装,都非常不方便。 最近发现了一个插件,Elasticsearch-SQL可以用sql查 阅读全文
摘要:
django是一个python web开发的框架。作为一个框架MVC的架构已经实现起来了。但是编码的时候你经常要进行进一步的抽象。 AOP是一种称为面向切面的开发思想,意思是将部分功能代码在运行时动态的加载到指定位置。最常见的应用是Spring中的依赖注入@Autowired。 而装饰器也可以被看成 阅读全文
摘要:
版本1:一个账号不能同时是司机乘客。 #-*- coding:utf-8 -*- ''' Created on 2016年8月2日 @author: yangfanholiday ''' class User(object): __doc__ = '在不改变case代码情况下,防止重复login,不会被其他case登录顶掉(并发),类似单例模式的demo,... 阅读全文