聚合文章列表
17 浏览

SD 框架 2.7 版本发布助力企业开发

选择SD框架助力企业开发今年年底历时2年多的迭代,这是SD框架硕果满满的一年,通过不断的迭代和改进SD框架已经在圈内有良好的口碑,不少新生的框架借鉴了SD的设计思想,SD框架也被不少创业型公司和大型企业使用。最新一版的SD框架是2.7.1版本,最大的变化就是添加了一个集群管理界面,可以通过可视化的界面监控集群服务器的运行状态,并进行一些查询操作。其余更新如下:1.“$SYS”服务器监控专用订阅主题,开发者可以订阅$SYS主题获得服务器监控信息2.服务器间的RPC由单向通知改为双向交互3.增加Timer定时器,该定时器在多进程中共享,A进程创建了定时B进程可以取消定时,可以在Controller,Model中使用,但请注意有严格使用方式的规范,使用不当容易导致数据错乱。4.UID现在不限制为int,可以使用String。SD框架到底是什么技术SD框架全称SwooleDistributed,从名称上看一个是Swoole一个是Distributed,他是基于Swoole扩展的可以分布式部署的应用服务器框架。借助于PHP的高效开发环境,

消息系统 2017-11-24 发布
15 浏览

这次真的忽略了一些ActiveMQ内心的娇艳

这次真的忽略了一些ActiveMQ内心的娇艳好久没总结了,内心有点空虚了,所以今天主要给园里的朋友们分享一点儿这几天使用ActiveMQ过程中踩过的小坑,虽然说这东西简单易用,代码几行配置也就几行,问题不大但是后果有点严重,所以就要必要总结一下了。首先ActiveMQ有俩种消息队列模式:点对点和发布订阅,这俩种都有不可替代的应用场景,前者适用于消息唯一传递的业务,后者适用于分布式环境下进行多面数据同步的操作。其次一些关于它的官方简介和安装步骤我就不占博客园数据库的内存了,写了也没啥鸟用,用烂的朋友想要提取点儿精华,没接触过的朋友请先安装一个玩玩点对点和发布订阅模式吧(http://www.cnblogs.com/1315925303zxz/p/6377551.html),理解一下这俩种机制的区别和出现消息临界值时的特性,我下面也放一些我前期用于测试的Demo,其中总结了一些他们二者的主要区别,都是实战中必须要考虑的因素可以参考:假设:存在一个消息生产者、多个消费者,分别在点对点和发布订阅模式下进行消息获取,当出现消息临界值的时候都有什

消息系统 2017-11-24 发布
14 浏览

为什么不能和程序媛谈恋爱?

「女人是水做的,男人是泥做的,而程序媛是水泥做的。」程序媛是这样一种生物,每月最女人的时间,大概就是亲戚造访的那一周吧。在这里,我要很严肃的告诉你们,不能和程序媛谈恋爱,否则后果自负。说说原因吧。基本上告别「精致妆发,时尚穿搭说真的,大部分程序媛真的不太会化妆,也就涂点保湿隔离,能熟练涂粉底,BB霜的,已经是最高规格。如果拥有超过四只以上的口红,那么她极有可能引领了办公室潮流。如果一周五天每天穿搭更换,风格迥异,那么她极有可能已经被评选为办公室走在时尚最前沿的人。程序媛大多曾经是班级中数一数二的学霸,醉心于学术,不能自拔,哪有时间学习化妆。再由于工科班级压倒性的性别优势,周边也没有太多浓妆艳抹的妖艳贱货,让素颜朝天的妹子同样炙手可热。她们平时工作也就是每天对着电脑欢乐的敲代码,不需要经常与人打交道,几乎没有学习化妆的意识与动力,久而久之成了手残党。即使化了妆,也很可能受到周边程序猿们的围观与嘲笑,瞬间想找个树洞静一静。女程序媛的这种特质,让她们被贴上了女汉子,不精致的标签。对细节要求高点的男生,和程序媛谈

程序员 2017-11-24 发布
AD 友情赞助
16 浏览

【Android】MediaPlayer生命周期分析

成功者和其他人最大的区别就是,他们真正动手去做了。MediaPlayer类可以用来播放音频、视频和流媒体。MediaPlayer包含了Audio和Video的播放功能,在Android界面上,Music和Video两个应用程序都是调用MediaPlayer来实现的。首先来看看MediaPlayer的生命周期。MediaPlayer生命周期图椭圆代表MediaPlayer对象可能驻留的状态。弧线表示驱动MediaPlayer在各个状态之间迁移的播放控制操作。这里有两种类型的弧线。由一个箭头开始的弧代表同步的方法调用,而以双箭头开头的代表的弧线代表异步方法调用。MediaPlayer是基于状态的,只有在特定状态才能执行特定的方法。所以认清MediaPlayer生命周期十分重要的。1、当MediaPlayer通过new方式进行初始化或MediaPlayer调用了reset()方法后,它就处于Idle状态。当调用了release()方法后,它就处于End状态。这两种状态之间是MediaPlayer对象的生命周期。1.1、在一个新构建的Me

程序员 2017-11-26 发布
15 浏览

一千个不用 Null 的理由

港真,Null貌似在哪里都是个头疼的问题,比如Java里让人头疼的NullPointerException,为了避免猝不及防的空指针异常,千百年来程序猿们不得不在代码里小心翼翼的各种if判断,麻烦而又臃肿,为此java8引入了Optional来避免这一问题。下面咱们要聊的是MySQL里的null,在大量的MySQL优化文章和书籍里都提到了字段尽可能用NOTNULL,而不是NULL,除非特殊情况。但却都只给结论不说明原因,犹如鸡汤不给勺子一样,让不少初学者对这个结论半信半疑或者云里雾里。本文今天就详细的剖析下使用Null的原因,并给出一些不用Null的理由。1、NULL为什么这么多人用?NULL是创建数据表时默认的,初级或不知情的或怕麻烦的程序员不会注意这点。很多人员都以为notnull需要更多空间,其实这不是重点。重点是很多程序员觉得NULL在开发中不用去判断插入数据,写sql语句的时候更方便快捷。2、是不是以讹传讹?MySQL官网文档:NULLcolumnsrequireaddi

MySQL 2017-11-24 发布
19 浏览

read-committed 隔离级别对 MySQL 复制的影响

read-committed隔离级别对MySQL复制的影响近期碰到了一个mysqlslave正常接收relaylog,但是不执行更新的情况,更准确的说是不执行row格式的所有更新,DDL和statement格式的都正常更新,主从环境配置见下文.环境配置OS:CentOSrelease6.7(Final)Kernel:2.6.32-573.18.1.el6.x86_64MySQL:Percona-Server-5.5.33-rel31.1-566.Linux.x86_64主从环境使用repl_discovery检查如下:#repl_discovery-h10.0.21.7-P3308-umonitor--askpassEnterpassword:+-10.0.21.7:3308version5.5.33-rel31.1-logserver_id2690331has_gtidNotS

MySQL 2017-11-24 发布
AD 友情赞助
9 浏览

「mysql优化专题」单表查询优化的一些小总结,非索引设计(3)

上篇讲解了「mysql优化专题」90%程序员都会忽略的增删改优化(2),相信大家都有所收获。接下来这篇是查询优化。其实,大家都知道,查询部分是远远大于增删改的,所以查询优化会花更多篇幅去讲解。本篇会先讲单表查询优化(非索引设计)。然后讲多表查询优化。索引优化设计以及库表结构优化等后面文章再讲。单表查询优化:(关于索引,后面再开单章讲解)(0)可以先使用EXPLAIN关键字可以让你知道MySQL是如何处理你的SQL语句的。这可以帮我们分析是查询语句或是表结构的性能瓶颈。(1)写sql要明确需要的字段,要多少就写多少字段,而不是滥用select*(2)可以用使用连接(JOIN)来代替子查询(3)使用分页语句:limitstart,count或者条件where子句时,有什么可限制的条件尽量加上,查一条就limit一条。做到不滥用。比如说我之前做过的的p2p项目,只是需要知道有没有一个满标的借款,这样的话就可以用上limit1,这样mysql在找到一条数据后就停止搜索,而不是全文搜索完再停止。(4)开启查询缓存:

MySQL 2017-11-26 发布
11 浏览

MariaDB AX开源分析解决方案

MariaDBAX开源分析解决方案版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。MariaDB公司推出了新的增强产品——MariaDBAX,它为数据仓库提供了一种现代化的方法,使得客户能够更经济高效地执行快速可扩展的分析。MariaDBAX扩展了MariaDB服务器,提供了一个解决方案,支持使用分布式存储和并行处理的高性能分析,并可以在线或在任何云平台上的现有硬件环境上进行扩展。MariaDBAX是一款功能强大的开源解决方案,可用于执行定制和复杂的分析。为了充分发挥大数据的力量,让MariaDB的客户需要能够近乎实时地收集数据,而不管数据来自何处。利用MariaDBAX,从不同来源获取和分析流数据比以往更容易,同时通过新的高可用性和备份功能确保最高水平的可靠性。传统的数据仓库价格昂贵并且操作复杂,因此需要更有意义、能够更及时的分析以满足硬件和成本压力。MariaDBAX专为性能和可扩展性而构建,使用分布式和列式开源存储引擎,并行查询处理,允许客户存储更多数据并更快速地进行分析。MariaDBAX支持各行各业

MySQL 2017-11-24 发布
10 浏览

MySql Binlog事件数据篇

Binlog事件数据1.QUERY_EVENT执行更新语句时会生成此事件,包括:create,insert,update,delete;Fixeddatapart,总长度13字节:4字节:执行sql的线程id;4字节:执行sql的时间;1字节:数据库名称的长度;2字节:执行sql产生的错误码;2字节:状态变量的长度,具体内容在Variablepart;Variablepart:可变字节:状态变量,每个状态变量key为一个字节,后面跟着value,不同的key对应不同长度的value,但是总长度在Fixeddatapart中已经定义;可变字节:数据库名称可变字节:sql语句,通过事件的总长度-header长度-Fixeddata-状态变量,剩余的字节数组通过utf-8编码即可获取;2.STOP_EVENT当mysqld停止时生成此事件;Fixeddatapart:空的Variablepart:空的3.ROTATE_EVENT当mysqld切换到新的b

MySQL 2017-11-24 发布
AD 友情赞助
14 浏览

Security7:管理SQL Server Agent的权限

Security7:管理SQLServerAgent的权限SQLServerAgent对象包括警报(Alert),操作员(Operator),Job,调度(Schedule)和代理(Proxy),SQLServer使用msdb系统数据库管理Agent对象的权限,msdb内置三个固定数据库角色,按照权限从小到大的顺序,依次是:SQLAgentUserRole、SQLAgentReaderRole和SQLAgentOperatorRole。如果一个用户不是这三个角色或sysadmin角色中的成员,那么该用户通过SSMS的ObjectExplorer看不到Agent节点。一个用户必须是SQLAgent的角色或sysadmin角色的成员,才能使用SQLServerAgent。另外,Agent的权限,还跟代理(Proxy)的访问权限有关,代理是用来执行JobStep的,只有建立代理和登陆(Login)之间的映射,用户创建(Own)的Job才能执行。一,Agent固定数据库角色SQLAgentUserRole角色被授予操作

SQL Server 2017-11-24 发布
18 浏览

从 JS Event Loop 机制看 Vue 中 nextTick 的实现原理

来源:GitBook作者:大师兄作为一名前端,一直以来以精通Javascript为目标。其实说实话精通真的挺难,不是你记住全部的API就算是精通。JavaScript的知识非常零散而庞杂,很多情况下上周学习的知识下周或是下个月就会忘记,给人的感觉就是好难学,怎么一直没进步呢?我们不能仅限于语言本身,我们要透过语法看到深层次的运行机制。掌握了Javascript运行机制,就好比学武术,大神级别都讲究“无招胜有招”。懂得了机制就可以举一反三,灵活运用。事件循环机制(EventLoop),则是理解运行机制最关键的一个点。我们先抛出一个面试题:setTimeout(function(){console.log(1)},0);newPromise(functionexecutor(resolve){console.log(2);for(vari=0;i<10000;i++){i==9999&&resolve();}console.log(3);}).then(function(){console

Vue.js 2017-11-24 发布
14 浏览

八、VueJs 填坑日记之参数传递及内容页面的开发

八、VueJs填坑日记之参数传递及内容页面的开发我们在上一篇博文中,渲染出来了一个列表,并在列表中使用了router-link标签,标签内的:to就是链接地址,昨天咱们是这样写的,今天我们来完成内容页面的渲染。编写内容页面还是废话少说,先上代码,将以下代码保存到/src/pages/Content.vue中: