之前工作过程中自定义的代码生成器模版,codesimit

动软代码生成器 和codesmith 5年前的东西,或许有些过时 动软的功能有限,改的也比较简单,已弃。 codesmith可定制性强,当时自已改的,提高了团队的整体工作效率。 codesmith代码定制时用C#开发,但代码生成器的应用并不限于语言 结构类似,架构清楚的数据结构,业务结构,架构规范,错误码,各语言都有 个人用过codesmith支持过 C# JAVA PYTHON GO NODEJ
阅读本文

nosql--redis

什么是nosql?nosql是非关系型数据库。之所以有这种数据库的产生就是在弥补mysql的缺点:关系固定,不容修改结构,查询速度缓慢等。分类:键值存储数据库,列存储数据库,文档型数据库,图形数据库。redis属于键值数据库,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(列表)、set(集合)、zset(sorted set --有序集合)和h
阅读本文

mogodb(1) 简介

1 引言NoSQL,全称是“Not Only Sql”,指的是非关系型的数据库。这类数据库主要有这些特点:非关系型的、分布式、开源的、水平可扩展的。原始目的是为了大规模web应用,这场全新的数据库革命运动早期就有人提出,发展至2009年趋势越发高涨。非关系型的数据存储通常的应用如:模式自有、支持简易复制、简单的API、最终的一致性(非ACID)、大容量数据等。它的种类繁多,如列式数据库(Hadoo
阅读本文

大型网站架构演化

1. 最初始的网站架构 就像我们在自己电脑上搭建了一个论坛的网站,应用程序(例如Apache服务器)、数据库等都部署在我们自己的电脑上的。就可以正常运行了。2. 应用服务和数据服务分离我们的论坛越来越受欢迎,用户越来越多,论坛也十分越活。但是面临的问题是数据库中的信息越来越多,存储不够了。这个时候我们又多弄了几台服务器,应用程序(Apache服务器)、数据库和保存用户上传的文件(图片)单独部署在不
阅读本文

Mysql Postgresql 抛开性能的对比

MySQL/MariaDB的当前版本是5.7.6(MariaDB为MySQL创建者Monty Widenius创建的一个MySQL分支),PostgreSQL的版本是9.4.1。以下几个方面对比两者的最新版本:ANSI标准兼容性:与先前的版本相比,MySQL已经有了长足的进步,但MySQL背后的哲学是,如果客户喜欢,他们就会支持非标准扩展,而PostgreSQL从开始就将标准构建到平台里。不过,二
阅读本文

支付系统的对账处理与设计--转

可以说,对账是支付系统最头疼的事情。每一笔交易,都要做到各参与者的记录能够吻合,没有偏差。对账系统的工作,是发现有差异的记录,即轧帐;然后通过人工或者自动的方式,解决这些差异,即平帐。对电商系统来说,每一笔交易,在所有相关主体侧都要能对得上: 交易主体,如果发起人是个人,必须能够从个人交易历史记录中找到这笔交易。但大部分人不会保留电子记录,所以一般是提供可以下载的账单或交易记录,让用户自己对去。
阅读本文

web架构延变

这片文章。现代web系统的架构现在的大型web系统多采用分布式的架构,分布式系统面临的最大挑战就是如何在复杂的、并发的情况下保证数据的一致性问题。通常为了避免由于保证数据一致性问题而带来的困难,通常情况下都是采用多个实例,单个数据源的架构模式,简化模式如图。  在这个架构中,通过不断的增加实例(webserver)可以降低应用服务器的压力,所以只要保证应用代码的质量、应用之间的低耦合性、可扩展性和
阅读本文

Redis数据类型应用场景及具体方法总结

StringsStrings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字。使用Strings类型,你可以完全实现目前 Memcached 的功能,并且效率更高。还可以享受Redis的定时持久化,操作日志及 Replication等功能。除了提供与 Memcached 一样的get、set、incr、decr 等操作外,Redis还提供了下面一些操作:获取
阅读本文

转:走近NoSQL数据库的四大家族

在目前的企业IT架构中,系统管理员以及DBA都会考虑使用NoSQL数据库来解决RDBMS所不能解决的问题,特别是互联网行业。传统的关系型数据库主要以表(table)的形式来存储数据,而无法应对非结构化数据的挑战。在进行数据标准化的过程中,关系型数据库性能遭遇了瓶颈。NoSQL顾名思义就是Not-Only SQL,它可以作为关系型数据库的良好补充。在TechTarget数据库之前的报道中,我们也对N
阅读本文

Unit01: 服务器概述 、 数据库服务器 、 WEB服务器

服务器概念       服务器(SERVER)其实就是一台PC机(硬件)       服务器的分类              硬件服务器 - PC机                     电脑硬件 - PC机/小型机/刀片机/中型机/大型机/超级计算机                     小型机 - IBM(AIX)/HP/联想(Linux)              软件服务器 - 中间件
阅读本文

一步步带你,如何网站架构

何为大型网站大型网站特性既然说的是大型网站架构,那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性,这些特性带来的问题就是人要解决的问题: 高并发、大流量:PV 量巨大; 高可用:7*24 小时不间断服务; 海量数据:文件数目分分钟 xxTB; 用户分布广泛,网络情况复杂:网络运营商; 安全环境恶劣:黑客的攻击; 需求快速变更,发布频繁:快速适应市场,满足
阅读本文

《大型网站技术架构》阅读笔记01

应用服务和数据服务分离(应用服务器、文件服务器、数据库服务器三分天下,各自选用性能更为适合的硬件服务器)使用缓存改善网站性能(80%的数据访问集中在20%的数据上,缓存这少部分数据可以大幅度提升网站响应速度,缓存分本地缓存和远程缓存,本地缓存即应用服务器缓存,远程缓存就是缓存在专门的分布式缓存服务器上的缓存,远程缓存可以部署集群,理论上不受容量限制)使用应用服务器集群改善网站的并发处理能力(应用服
阅读本文

《大型网站技术架构》阅读笔记02

分层(将系统在横向维度上切分成几个部分,每个部分负责一部分相对比较单一的职责:应用层——负责具体业务和视图展示、服务层——为应用层提供服务支持、数据层——提供数据存储访问服务)分割(分割是在纵向方面对软件进行切分,将不同的功能和服务分割开来,包装成高内聚低耦合的模块单元)分布式(分层和分割的一个主要目的就是为了切分后的模块便于分布式部署,即将不同的模块部署在不同的服务器上,通过远程调用协同工作。分
阅读本文

mongodb应用

首先我们来分析下mysql 与mongodb的特点与优劣。下面是我以前做的ppt的部分截图。再来分析下应用场景,a.如果需要将mongodb作为后端db来代替mysql使用,即这里mysql与mongodb 属于平行级别,那么,这样的使用可能有以下几种情况的考量:(1)mongodb所负责部分以文档形式存储,能够有较好的代码亲和性,json格式的直接写入方便。(如日志之类)(2)从data mod
阅读本文

redis的socket event loop

很早之前就因为nosql就听说了redis,直到去年才真正去了解,只能说相见恨晚。因为数据库相关,我就以为这肯定是个庞然大物,万万没想到,源码不到2M,所以,我不知道该说啥了。。。 还是来点靠谱的: 1 /* Include the best multiplexing layer supported by this system. 2 * The following should be ord
阅读本文

mongodb,redis,hbase 三者都是nosql数据库,他们的最大区别和不同定位是什么?

不严谨地讲,Redis定位在“快“,HBase定位于“大“,mongodb定位在“灵活“。 NoSQL的优点正好就是SQL的软肋,而其弱点正好也就是SQL的杀手锏-----------------------------------------最大区别在于,在一般使用情况下,mongodb可以当作简单场景下的但是性能高数倍的MySQL, Redis基本只会用来做缓存,HBase用来做离线计算
阅读本文

大型网站技术架构梳理

文末附有相关技术图谱。大型网站演化进程初始阶段的网站架构:一台服务器,上面同时拥有应用程序,数据库,文件,等所有资源。例如 LAMP 架构应用和数据服务分离:三台服务器(硬件资源各不相同),分别是应用服务器,文件服务器和数据库服务器使用缓存改善网站性能:分为两种,缓存在应用服务器上的本地缓存和缓存在专门的分布式缓存服务器的远程缓存使用应用服务器集群改善网站并发处理能力:通过负载均衡调度服务器来将访
阅读本文

Elasticsearch与Solr

公司之前有个用Lucene实现的伪分布式项目,实时性很差,后期数据量逐渐增大的时候,数据同步一次需要十几小时。当时项目重构考虑到的是Solr和ES,我参与的是Solr技术的预研。因为项目实时性要求很高,最终选择的是ES。Elasticsearch简介Elasticsearch是一个实时的分布式搜索和分析引擎。它可以帮助你用前所未有的速度去处理大规模数据。它可以用于全文搜索,结构化搜索以及分析,当然
阅读本文

8 种 NoSQL 数据库系统对比(转自: http://blog.jobbole.com/1344/)

导读:Kristóf Kovács 是一位软件架构师和咨询顾问,他最近发布了一片对比各种类型NoSQL数据库的文章。虽然SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破。这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举。但是NoSQL数据库之间的不同,远超过两 SQL数据库之间的差别。这意味着软件架构师更应该在项目开始时就选择好一个适合的 NoSQL
阅读本文

编程书籍阅读随谈(第二篇)

这个读书随谈每篇介绍自己看过的10本书,估摸着会成为一个系列,且听我慢慢道来。上一篇主要讲解的是.NET方面的书籍,下面会介绍一些其他方面的书籍。知识是在传播中得到延伸,在人们的思考中才得到发展。作为程序员不看几本书,的确有些说不过去。   开始今天的10本书介绍,在这个系列中我将书分为三级:入门级,提升级,大神级。如果有更好的分类名称,欢迎大家留言。如果需要一些书的PDF文档,欢迎下面留下
阅读本文