月星墙的博客

Better Code, Better Life


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 站点地图

  • 搜索

mongodb

发表于 2016-08-14 | 分类于 db
mongodb简介 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的 ^1 官网:https://www.mongodb.com MongoDB 存储的是 BSON 结构,类似的文档型数据库 RethinkDB 是一个主要用来存储 JSON 结构的 客户端工具 Navicat Robo 3T(后来要收费):下载地址 https://robomongo.org/download (Download portable version for Windows 64-bit为免安装版) mongodb安装运行windows 下载地址 运行.msi文件,选择custom模式后可以选择安装位置(如:D:/software/mongodb) 进入到安装目录D:/software/mongodb 新建 log 和 db 两个文件夹 D:/software/mongodb/bin/mongo --version 查看版本 linux1234567891011121314sudo curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0 ...
阅读全文 »

RabbitMQ

发表于 2016-08-14 | 分类于 arch
RabbitMQ 简介 RabbitMQ 的官方站:http://www.rabbitmq.com/ 相关文章 https://blog.csdn.net/qq_39944028/category_10966875.html https://cloud.tencent.com/developer/article/1816305 rabbitMQ 是一个在 AMQP 协议(高级消息队列协议)标准基础上完整的,可服用的企业消息系统。他遵循 Mozilla Public License 开源协议。采用 Erlang 实现的工业级的消息队列(MQ)服务器。 相关概念 Broker 消息队列服务器实体 VirtualHost 在 RabbitMQ 中可以虚拟消息服务器 VirtualHost,每个 VirtualHost 相当于一个相对独立的 RabbitMQ 服务器,每个 VirtualHost 之间是相互隔离的,一个 broker 里可以开设多个 vhost,用作不同用户的权限分离。exchange、queue、message 不能互通。VirtualName 一般以/开头 Exchange 消息交换机,它指定消息按什么规则,路由到哪个队列 Queue 消息队列载体,每个消息都会被投入到一个或多个队列 Binding 绑定,它的作用就是把 exchange 和 queue 按照路由规 ...
阅读全文 »

linux系统

发表于 2016-07-21 | 分类于 linux
基础知识 Linux 和 BSD 都是类 UNIX 操作系统 二者均开源 Linux 使用 GNU 通用公共许可证,即 GPL。修改Linux核心源码后必须开源 BSD(Berkeley Software Distribution,伯克利软件套件) 使用 BSD 许可证。修改源码后不需开源 BSD分支 FreeBSD:是最受欢迎的 BSD。支持英特尔和 AMD 的32位和64位处理器 NetBSD:被设计运行在几乎任何架构上,支持更多的体系结构 OpenBSD:为最大化的安全性设计的 DragonFly BSD:设计目标是提供一个运行在多线程环境中的操作系统。如计算机集群 Darwin / Mac OS X:Mac OS X 实际上基于 Darwin 操作系统,而 Darwin 系统基于 BSD Linux发行版:一类是商业公司维护的发行版本,另一类是社区组织维护的发行版本。前者以著名的Redhat(RHEL)为代表,后者以Debian为代表 Redhat系列 Redhat是yum包管理方式 RHEL (Redhat Enterprise Linux) Fedora Core (由原来的Redhat桌面版本发展而来,免费版本) CentOS (RHEL的社区克隆版本,免费) Rocky Linux CentOS替代方案,开源免费,兼容RHEL Debian系列 使用 ...
阅读全文 »

UML

发表于 2016-07-17 | 分类于 lang
UML介绍 UML(Unified Modeling Language): 统一建模语言,是一种图形化的语言,它可以帮助我们在OOAD过程中标识元素、构建模块、分析过程并可通过文档说明系统中的重要细节。 OO(Object Oriented):面向对象 OOAD(OOA&D):面向对象的分析与设计 OOP(Object Oriented Programming):面向对象编程 OOP的主要特征:抽象(abstract)、封装(encapsulation)、继承(inheritance)、多态(polymorphism)、关联(association)、聚合(aggregation)、组合(composition)、内聚与耦合(cohesion & coupling) RUP(Rational Unified Process):统一过程,是一个采用面向对象思想,使用UML作为软件分析设计语言,并结合了项目管理、质量管理等软件工程知识综合而成的软件方法。RUP分为四个阶段:初始,精化,构建(编码),交付(使用部署图)。RUP拥抱了需求的变化,好于瀑布式开发(照搬建筑模型,需求变化后修改很麻烦) UML包括:事物、关系、图、扩展机制 事物包括: 结构:类、接口、构件、节点等 行为:交互(消息)、状态等 分组:包、子系统等 注释:注释 关系 包括:依赖、关联、泛化( ...
阅读全文 »

jquery插件开发

发表于 2016-07-12
纯js插件优点是依赖性小,不依赖于jQuery等函数库;缺点是比较繁琐;一般不涉及到Dom树的可使用纯js写插件(如:日期库插件moment.js) 基于jquery编写插件jQuery插件开发方式主要有三种: 通过$.extend()来扩展jQuery 通过$.fn 向jQuery添加新的方法 通过$.widget()应用jQuery UI的部件工厂方式创建 第一种方式太简单,仅仅是在jQuery命名空间或者理解成jQuery身上添加了一个静态方法而以,通常我们使用第二种方法来进行简单插件开发,说简单是相对于第三种方式。第三种方式是用来开发更高级jQuery部件的,这里不细说。 $.extend()用法 给extend方法传递单个对象的情况下,这个对象会合并到jQuery身上,所以我们就可以在jQuery身上调用新合并对象里包含的方法了$.extend(Object) 12345678$.extend({ log: function(str) { console.log(str ? str : 'Good!'); }})//调用$.log(); // Good!$.log('Hello!'); // Hello! 当给extend方法传递一个以上的参数时,它会将所有参数对象合并到第一个里。同时,如果对象中有同名属性时 ...
阅读全文 »

RocketMQ

发表于 2016-07-11 | 分类于 arch
RocketMQ简介 RocketMQ是阿里巴巴开源的分布式、队列模型的消息中间件。 【GitHub源码】 【下载地址(v3.2.6)】 文档:RocketMQ Developer Guide.pdf 启动RocketMQ服务 启动mqnamesrv.exe(在bin目录下,也有对应Linux的启动程序) 启动mqbroker.exe 最好不要直接双击,而是应该在CMD中输入mqbroker.exe -n localhost:9876 mqbroker.exe -h查看相关命令帮助 关于命令行 可启动mqadmin.exe查看相关命令(不能直接双击,要在cmd命令行中启动) 启动mqadmin.exe后可运行一些命令,如mqadmin topicList -n 192.168.0.1:9876查看该NameServer所有的topic 可运行mqadmin help 命令或者某个命令的更多帮助 mqadmin.exe启动后可以新增/更新Topic(因为Broker默认关闭了自动创建Topic功能,可能会导致Producer向Broker发送消息,服务器校验不通过,详细issure) Producer生产者Producer启动 一个应用创建一个Producer,由应用来维护此对象,可以设置为全局对象或者单例。 ProducerGroupName需要由应用来保证唯一 ...
阅读全文 »

Java开发规范

发表于 2016-07-06 | 分类于 extend
源文件基础 文件名:源文件以其最顶层的类名来命名,大小写敏感,文件扩展名为 .java 文件编码:UTF-8 特殊字符:注释明确 源文件结构 一个源文件包含(按顺序地,以下每个部分之间用一个空行隔开): 许可证或版权信息(如有需要) package语句:package语句不换行 import语句 一个顶级类(只有一个) import语句 import不要使用通配符,即,不要出现类似这样的import语句:import java.util.*; 每个import语句独立成行 文件中不能含有无用的import语句 类声明 只有一个顶级类声明:每个顶级类都在一个与它同名的源文件中 类成员顺序 成员属性 构造方法 普通方法(按照某中逻辑顺序而非时间顺序) 重载永不分离:当一个类有多个构造函数,或是多个同名方法,这些函数/方法应该按顺序出现在一起,中间不要放进其它函数/方法。 格式 大括号 使用大括号(即使是可选的):大括号与if, else, for, do, while语句一起使用,即使只有一条语句(或是空),也应该把大括号写上。 非空块:遵循Kernighan和Ritchie风格 左大括号前不换行 左大括号后换行 右大括号前换行 如果右大括号是一个语句、函数体或类的终止,则右大括号后换行; 否则不换行。例如,如果右大括号后面是else或逗号,则不换行。 空 ...
阅读全文 »

redis

发表于 2016-07-02 | 分类于 db
Redis简介 redis.cn、官网:http://redis.io/、Redis Github、redis 在线测试 Redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存储 (store) 系统 由于 Redis 的键包括 string,hash,list,set,sorted set,bitmap 和 hyperloglog,所以常常被称为数据结构服务器 单实例,单进程、单线程(epoll),占用资源少(单实例只使用1M内存) 版本3.×(最早版本)为单线程 版本4.×,负责处理客户端请求的线程单线程,但是开始加了点多线程的东西(异步删除) 版本6.x 开始,全面支持多线程。将网络数据读写、请求协议解析通过多个IO线程来处理,真正执行命令的线程仍然是主线程单独进行操作 常见的缓存memcached、redis比较参考 redis windows客户端(64x,官网不提供window安装包):https://github.com/MSOpenTech/redis redis客户端连接管理软件 Navicat Premium 17支持redis (推荐)AnotherRedisDesktopManager RedisDesktopManager java操作redis(客户端jar) Redisson jedis ...
阅读全文 »

lightstreamer

发表于 2016-06-25 | 分类于 service
Lightstreamer简介 Lightstreamer可用于即时通讯(web聊天室、客服聊天)、实时新闻推送、实时股价行情等需要服务器一致给用户推送消息的场景。支持多平台(windows/unix/mac等),支持多种语言(java、.NET、nodejs等),支持多种设备(web端、移动端等)。提供免费版和商业版。 官网:lightstreamer Ajax推送与拉取方式使用Ajax可以开发出基于浏览器的具有高用户交互性和几乎不易觉察到延迟的web应用。实时的动态数据比如新闻标题、证券报价和拍卖行情都需要尽快地发送给用户。然而,AJAX仍然受限于web请求/响应架构的弱点,使得服务器不能推送实时动态的web数据。 可以实现基于web的实时事件通知的方法有: HTTP拉取方式:在这种传统的方法中,客户端以用户可定义的时间间隔去检查服务器上的最新数据。 HTTP流:这种方法由存在于不间断的HTTP连接响应中或某个XMLHttpRequest连接中的服务器数据流所组成。 反转AJAX:服务流应用到AJAX,就是所谓的反转AJAX 或者COMET 。它使得服务器在某事件发生时可以发送消息给客户端,而不需要客户端显式的请求。目标在于达到状态变化的实时更新。COMET使用了HTTP/1.1中的持续连接的特性。通过HTTP/1.1,除非另作说明,服务器和浏览器之间的TCP连接会一直保持 ...
阅读全文 »

JavaScript知识点

发表于 2016-06-11 | 分类于 web
简介 MDN-JS文档 rollup的在线repl查看各种模块写法 ES6(ES2015)CommonJS/AMD/CMD/UMD/ESModule区别 JavaScript模块化说明 ^8 CommonJS 定义的模块分为:module模块标识、exports模块定义、require模块引用。Node里面的模块系统遵循的是CommonJS规范 exports 返回的是模块函数,module.exports 返回的是模块对象本身,返回的是一个类。注意不是export 在一个node执行一个文件时,会给这个文件内生成一个exports和module对象,而module又有一个exports属性。他们之间的关系如下图,都指向一块{}内存区域。exports = module.exports = {}; 多次引用同一个js不会导致重复引用,且优先执行最深层js文件中的代码 案例 12345678910111213141516171819202122232425262728// test1.jsvar app = { name: 'app', version: '1.0.0', sayName: function(name) { console.log(this.name) }}module.expo ...
阅读全文 »
1…151617
smalle

smalle

167 日志
14 分类
153 标签
RSS
欢迎关注公众号:阿壹族 欢迎关注公众号:阿壹族
© 2016 - 2025 smalle    
由 Hexo 强力驱动
主题 - NexT.Mist
站长统计
AD    
阿里云大礼包
©AEZO.CN    
圣骑科技
【One能抽屉】小程序
杂货铺(省钱小助手)