React 数据流与Flux框架

 2016年03月08日    282

React 本身只是一个视图(View),也就是MVC中的“V”。你可以很容易将React集成到你当前使用MVC框架中,也可以使用FactBook官方推出的Flux框架。Flux框架为React 提供一套单身的数据流(Data Flow)的模式,Flux为我们提供了组织代码和安排内部逻辑的方式,这样我们只需要写很少的代码就能实现想要的功能,使应用更加易于开发和维护。

阅读全文

Express.js(Node.js) 配置Redis持久化存储Session会话

 2016年03月06日    504

Session用于在服务端保存用户会话状态(如:用户登录信息等)。Session在程序重启、多进程运行、负载均衡、跨域等情况时,会出现Session丢失或多进程、多个负载站点间状态不能共享的情况。要解决这些问题,我们需要将Session持久化存储,Redis存储是一个非常不错的Session持久化解决方案。

阅读全文

Express.js应用的多进程运行-cluster模块与Express集群

 2016年03月05日    239

Node.js程序是单进程运行的,使用Express框架开发的Web应用同样也是。当使用多核系统时,这会导致对多核资源的浪费。这时,我们可以使用Node.js的cluster模块创建一个多核集群,让Express应用多进程运行,充分利用多核资源。

阅读全文

Node.js内存溢出-process out of memory 问题的处理

 2016年03月05日    1247

Node.js做密集型运算,或者所操作的数组、对象本身较大时,容易出现内存溢出的问题,这是由于Node.js的运行环境-V8引擎导致的。如果经常有较大数据量运算等操作,需要对Node.js运行环境限制有充分的了解。

阅读全文

React 服务端渲染

 2016年03月01日    632

React 组件会在虚拟DOM中完成渲染,并通过虚拟DOM来更新DOM在浏览器中的变化。React 对组件的渲染是由 JavaScript 的完成的,也就是说:只有 JavaScript 在浏览器加载完成后才会开始组件的渲染。这种DOM管理机制会存在一些问题,如:搜索引擎抓取不到站点内容、对站点性能造成一定的影响。React 虚拟DOM是DOM在内存中的表现形式,这为React 在浏览器环境中运行提供了可能。React 可以从虚拟DOM中生成一个字符串(而非更新真正的DOM),这使我们可以从客户端和服务端使用同一个组件。

阅读全文

Node.js&Express.js HTTP应用超时设置

 2016年02月28日    535

Node.js创建的HTTP服务器,其对于每个客户端请求的默认连接时长是2分钟(120秒)。如果在这个时间内,服务器没有发送响应信息(response),客户端的连接就会被重置。时间过长的请求响应会造成极差的用户体验,而且会造成IO的阻塞,对于单线程运行的Node.js应用来说,这种影响简直是灾难性的。合理的设置应用的超时时间非常重要。

阅读全文

React 性能优化

 2016年02月24日    756

React 会在任意时间点在状态改变后高效的重绘整个用户界面,其对虚拟DOM diff 法保证了DOM的最小化重绘。在大多数情况下,React 对DOM的渲染效率可以满足我们需求。但少数情况下,我们需要更精细化的渲染来进一提高运行效率。本文介绍一些简单的优化方法,你可以在需要时参考使用。

阅读全文

Express.js 创建Node.js Web应用

 2016年02月22日    423

Express.js是一个基于Node.js的Web应用框架,框架的设计目的是构建应用的架构和简化应用的开发。框架会解决一些通用的问题,在Express.js中,Express框架会处理如:中间件、代码控制、静态资源管理、HTML模块加载等问题。Express.js是非常优秀的一个Web框架,本站就是基于Express框架构建的。

阅读全文

JavaScript HTML DOM节点类型之Attr类型

 2016年02月21日    10

Attr类型在DOM中表示元素的特性,持性可以理解为元素的attributes属性的节点。Attr具有较好的浏器支持,主流浏览器(IE8及以后)都可以访问Attr的构造函数和原型。

阅读全文