聚合文章列表
19 浏览

Express4.x API (四):Router (译)

Express4.xAPI译文系列文章Express4.xAPI(一):application(译)--进行Express4.xAPI(二):request(译)--完成Express4.xAPI(三):Response(译)--完成Express4.xAPI(四):router(译)--完成已经完成了Express4.xAPI中的Requst和Response对象的文档翻译。简单的总结,request对象即表示HTTP请求,包含了请求查询字符串,参数,内容,HTTP头等属性;response对象则表示HTTP响应,即在受到请求时向客户端发送的HTTP响应数据。Express则基于此提供给我们一些方法,完成指定的请求和响应。技术库更迭较快,很难使译文和官方的API保持同步,我们只有提升自己的英语能力才能更快的适应库的更新迭代,阅读到最新资料。所以我此次翻译的目的,一是熟悉express文档,二是锻炼自己英语阅读能力;原文地址:express.comRouterrouter对象是中间件

JavaScript 2017-12-23 发布
20 浏览

简易封装 XHR:支持 GET/POST/PUT/DELETE/JSONP/FormData

AJAX就是XHR的应用,无需多说。请看看小弟我第N次的封装工作。首先声明命名空间,先占一个位://basegoeshere...ajaxjs={};//Setupatopnamespace然后依赖一些方法:/**--------------------------------------------------------*函数委托参见*http://blog.csdn.net/zhangxin09/article/details/8508128*@return{Function}*--------------------------------------------------------*/Function.prototype.delegate=function(){varself=this,scope=this.scope,args=arguments,aLength=arguments.length,fnToken='function';ret

JSONP 2017-12-23 发布
23 浏览

玩转编程语言:构建自定义代码生成器

在真实的软件开发过程中,无论使用何种编程开发语言,都不可避免的会遇到代码重复的问题。如何处理重复的问题,可以选择情怀(手动再敲一遍),也可以选择Copy-to-Copy,或者选择代码生成器。正如在之前的文章我的写作工具链中,我介绍过一种Blog生成器hexo,可以将Markdown格式的内容自动生成方便发布的HTML格式。本文将还原hexo的运行原理,为解决类似问题提供一些参考思路。示例:通过Markdown文件声明模板(源代码),通过脚本生成HTML文件(目标代码),并预览代码生成效果。Step1:准备环境(dependencies)开发语言Node.js,一个能够运行JavaScript的开放源代码、跨平台运行环境。npminit—初始化root目录npmi-slive-server—该模块支持本示例生成静态HTML站点,提供热部署能力npmi-snodemon—该模块支持当文件变化自动执行重构任务npmi-sconcurrently—该

CSS 1900-01-01 发布
AD 友情赞助
22 浏览

jQuery 语法

jQuery语法是通过选取HTML元素,并对选取的元素执行某些操作。基础语法:$(selector).action()美元符号定义jQuery选择符(selector)"查询"和"查找"HTML元素jQuery的action()执行对元素的操作举例$(this).hide()-隐藏当前元素$("p").hide()-隐藏所有

元素$("p.test").hide()-隐藏所有class="test"的

元素$("#test").hide()-隐藏所有id="test"的元素网页文档加载完后运行jQuery这是为了防止文档在完全加载(就绪)之前运行jQuery代码,即在DOM加载完成后才可以对DOM进行操作。$(document).ready(function(){//开始写jQuery代码...});如果在文档没有完全加载之前就运行函数,操作可能失败。下面是两个具体的例子:1:试图隐藏一个不存在的元素2:获得未完全加载的图像的大小

jQuery 2017-09-16 发布
17 浏览

jQuery 钳子|选择器

image.pngjQuery有个各种各样的钳子(选择器),可以夹不同的零件。jQuery钳子(选择器)有id、类、类型、属性、属性值等"查找"(或选择)HTML元素。它基于已经存在的,除此之外,它还有一些自定义的选择器。jQuery选择器允许您对HTML元素组或单个元素进行操作。jQuery中所有选择器都以美元符号开头:$()。钳子1:元素(标签)选择器jQuery元素选择器基于元素名选取元素。在页面中选取所有

元素:$("p")实例用户点击按钮后,所有

元素都隐藏:$(document).ready(function(){$("button").click(function(){$("p").hide();});});测试钳子2:#id选择器jQuery#id选择器通过HTML元素的id属性选取指定的元素。页面中元素的id应该是唯一的,所以您要在页面中选取唯一的元素需要通过#id选择器。通过id选取元素语法如下:$("#test")实例当用户点击按钮后,有

jQuery 1900-01-01 发布
19 浏览

jQuery |淡入淡出

通过jQuery,您可以实现元素的淡入淡出效果。jQuery拥有下面四种fade方法:fadeIn()fadeOut()fadeToggle()fadeTo()下面一一介绍jQueryfadeIn()方法淡入已隐藏的元素jQueryfadeIn()用于淡入已隐藏的元素。语法:$(selector).fadeIn(speed,callback);可选的speed参数规定效果的时长。它可以取以下值:"slow"、"fast"或毫秒。.实例:带有不同参数的fadeIn()方法$("button").click(function(){$("#div1").fadeIn();$("#div2").fadeIn("slow");$("#div3").fadeIn(3000);});尝试一下»淡出fadeOut()方法用于淡出可见元素。jQueryfadeOut()方法用于淡出可见元素。语法:$(selector).fadeOut(speed,callback);可选的speed参数规定效

jQuery 1900-01-01 发布
AD 友情赞助
25 浏览

jQuery |滑动

jQuery滑动方法可使元素上下滑动。应用场景:子父级组织,例如:中国下有,陕西省、山东、河北。jQuery滑动方法通过jQuery,您可以在元素上创建滑动效果。jQuery拥有以下滑动方法:slideDown()slideUp()slideToggle()jQueryslideDown()方法向下滑动元素语法:$(selector).slideDown(speed,callback);可选的speed参数规定效果的时长。它可以取以下值:"slow"、"fast"或毫秒。可选的callback参数是滑动完成后所执行的函数名称。实例slideDown()方法:$("#flip").click(function(){$("#panel").slideDown();});尝试一下»jQueryslideUp()方法用于向上滑动元素。语法:$(selector).slideUp(speed,callback);可选的speed参数规定效果的时长。它可以取以下值:"slow"、"fast"

jQuery 1900-01-01 发布
28 浏览

记一次高并发场景下.net监控程序数据上报的性能调优

最近在和小伙伴们做充电与通信程序的架构迁移。迁移前的架构是,通信程序负责接收来自充电集控设备的数据实时数据,通过Thrift调用后端的充电服务,充电服务收到响应后放到进程的Queue中,然后在管理线程的调度下,启动多线程进程数据处理。随着业务规模的不断扩大和对系统可用性的逐步提高。现在这个架构存在很多的问题,比如:1.充电服务重启,可能会丢数据。2.充电服务重启会波及影响通信服务。3.充电服务与通信服务面对的需求和变化是不一样,强依赖的架构带来很多的问题。为了解决上述的这些问题,项目组决定借助Kafka对程序进行改造。总体思路是,通信服务收到数据后,把数据存储到kafka,然后通过一个异步任务处理框架实时消费Kafka数据,并调用业务插件处理。通过上面思路我们可以看到,系统整体架构仅是引入了一个MQ中间件,业务逻辑并没有发生本质的变化。但是在实际的压测中,却发现新架构下的程序性能比原来要慢很多。顺便说一下,压测场景是模拟10万充电终端离网上下线,短时间内会生成大约32万的消息量,遥信:10万,

.Net 2017-12-23 发布
23 浏览

2018 年,不要事后才想到代码安全问题

年复一年,企业都会在安全方面面临挑战,2017年也不例外。与其向业界宣传安全的重要性,还不如试着找一种新方式让安全重回中心。“问题是,根据CAVeracode和DevOps.com的2017年DevSecOps全球技能调查,当今世界没有对开发人员进行适当的编码安全教育。“DevOps.com主编AlanShimel表示,”由于行业违规行为的出现,则进一步强调了将安全问题整合到DevOps流程中的必要性,因此更多组织需要确保在其DNA中加入适当的安全培训。“由于一般的教育不能满足安全需求,所以组织需要通过增加对教育的支出来弥补差距。”CAVeracode11月份的软件安全开发者指南重申了安全教育的必要性,并强调这不是一个一次性的提议。随着应用程序体系结构,语言和功能的不断变化,开发人员需要不断学习应用程序安全技能,并在专业领域进行实践。DevSecOps成为一种流行趋势,这让DevOps团队开始思考如何将安全问题融入软件的整个生命周期。“目前应用程序最大的安全问题是开发组织并没有去保护他们的软件,他们迫切发布软件。

程序员 2017-12-23 发布
AD 友情赞助
16 浏览

DigitalOcean 发现大多数开发人员并不使用 AI 或 CD

尽管人工智能带来了很多好处,但并不是很多开发人员在使用它。DigitalOcean最新发布的报告显示,2017年只有17%的受访者从事人工智能或机器学习。然而,剩下73%不使用人工智能的人中,也计划在2018年学习更多其他的技术。超过一半的受访者(63%)认为自动化工作流是2018年的一个重大挑战。63%的受访者表示机器学习和人工智能的结合才是明年将面临最大的挑战。此外,报告显示只有42%的受访者使用持续集成或持续交付。那些不使用它的人说是因为他们的工作流程没有使用到,或者说它太复杂了。第四季度报告旨在研究2018年新兴的软件开发趋势,给开发者更好的指导。该公司调查了软件开发社区中的2,500多名员工。另一个关键的发现是,89%的受访者表示Linux仍然是他们首选的服务器操作系统。其他的选择为Windows(8%),MacOS(2%)和BSD(1%)。将近一半的受访者表示,如果2018考虑换公司的话,工作环境和文化是最重要的方面。最后,67%的受访者表示LetsEncrypt

程序员 2017-12-23 发布
23 浏览

视频访谈: 宋一玮:FreeWheel在微服务架构下的前端改造实践

21:23个人简介宋一玮,毕业于北京理工大学,曾供职于IBM、Amazon以及一家O2O创业公司,现任FreeWheel基础架构部门主任工程师,负责FreeWheel自有前端框架SparkUI的设计研发和推广。从最早的ASP、JSF、Flex、Dojo,一直到移动端、Angular,以及现在FreeWheel使用的React.js,从事前端开发已有10年。全球架构师峰会(InternationalArchitectSummit,下简称ArchSummit)是由InfoQ中文站主办的一次全球性架构师峰会。ArchSummit专门针对架构师人群,讲述与架构和架构师相关的各方面趋势、技术和案例。这也是继QCon之后,InfoQ中文站主办的又一次高端技术盛会。

软件架构 2017-12-23 发布
26 浏览

Mysql MVCC原理

MVCC多版本并发控制技术,用于多事务环境下,对数据读写在不加读写锁的情况下实现互不干扰,从而实现数据库的隔离性,在事务隔离级别为ReadCommit和Repeatableread中使用到这篇文章主要用来描述mysqlmvcc机制的运行原理聚簇索引结构InnoDB表数据为主键聚簇索引,mysql默认为每个索引行添加了4个隐藏的字段,分别是DB_ROW_IDInnoDB引擎中一个表只能有一个主键,用于聚簇索引,如果表没有定义主键会选择第一个非Null的索引作为主键,如果还没有,生成一个隐藏的DBROWID作为主键构造聚簇索引DB_TRX_ID最近更改该行数据的事务IDDB_ROLL_PTRundolog的指针,用于记录之前历史数据在undolog中的位置DELETEDBIT索引删除标志,如果DB删除了一条数据,是优先通知索引将该标志位设置为1,然后通过(purge)清除线程去异步删除真实的数据如图所示,undolog中记录之前修改该行数据的事务ID以及被修改的历史数据整个MVCC的机制都是通过DB

MySQL 2017-12-23 发布
AD 友情赞助
37 浏览

MySQL 秒级加列终成现实

破产码农IT圈最会讲故事的网红记得2015年DTCC数据库大会时,盖总和我推杯换盏,大谈PostgreSQL未来在企业发展的可能性。当时可能雪碧喝高了,一口咬定:PG没有前途,不论OLTP还是OLAP领域。盖总报以迷之微笑。北京回来之后,当即发文:去IOE,MySQL完胜PostgreSQL。谁知一石激起千层浪,听闻这篇文章让一些公司的销售哥哥们辗转反侧,公司濒临破产,上市计划就此搁浅。公司创始人不惜发动水军对我进行各种攻击。如果区区一家言论能让一家公司IPO失败,是不是那家公司应该考虑给我个1%的股份。这就好似那些开放商和房产大V互相狼狈为奸,蛊惑老百姓接盘商住公寓?还美其名曰地和小白说,做低房价可以避税。2年后,我想盖总应该欠我一瓶82年的雪碧。毕竟恩墨没有allinPG,否则死的得多难看。盖总是不是连仅剩的一些头发都要没了?一世英名毁于一旦。当然,每个圈子都少不了笑话,比如最近看到最好笑的笑话:连续三月涨势明显!PostgreSQL这是要赶超MySQL的节奏?觉醒—对于任何一

MySQL 2017-12-23 发布
25 浏览

最近的一次讨论记录

-从视图往远程请求的这个方向,订阅关系是一条直线-从远程请求回来的这个方向,订阅关系可能是个网如果在这个情况下,非要把它们链式写成一个流,往往带来可维护性的负担。可以考虑把它断成两节,上一半只管写,下一半只管读。从写的方向看,一条线到底,拿到结果,无论正常、异常,是否有pending,都一起写入下面这些流的起始点;从读的方向看,对于任意一个起点,都可能看得到它往视图方向的整个树,从视图方向看,任何一个视图的组合订阅,又都可以看得到往数据层的整个订阅树。虽然这是个网,但看上去也是非常清晰的,可维护性也比较好。问:那么,一次性和管道流的含义又分别是什么?所谓一次性,是指非可重复的事情,比如单次的网络请求,通常,你会用Promise表达,但对于一个掌握了RxJS基本用法的人来说,身怀利器,杀心自起,你会倾向于把原先用Promise表达的东西全部换成RxJS,比如一个简单的xxx.then,你就要想把它变成mergeMap,其实这是不必要的。Future和Stream,没有必要在中间步骤上做

JavaScript 2017-12-23 发布
21 浏览

Node.js VS PHP — 你应该选择哪一个?

现在,Web开发公司和开发人员可以选择多种技术栈来构建Web应用程序。早期网络发展,不同的技术被用于前端和后端开发。但是,随着Node.js的发布,布局发生了变化,因为它允许开发人员使用JavaScript编写后端代码。这最终催生了MEAN(MongoDB+Express+AngularJS+NodeJS)堆栈web开发框架,从前端到后端甚至是数据库(MongoDB-JSON)都使用JavaScript。在Node.js之前,Web开发通常是在PHP的帮助下完成的,因为它很容易与HTML集成,帮助开发人员立即构建动态网站。在这篇文章中,我们将比较Node.js和PHP,看哪一个最适合当前的行业需求。PHP和Node.js的基本区别在于PHP是一种编程语言,Node.js是一个基于ChromeV8引擎的JavaScript运行环境。Node.jsVSPHP,哪一方可以赢得这场战争取决于你构建的网站类型。比方说,如果你想构建一个实时的聊天应用程序,那么选择Node.js

JavaScript 2017-12-23 发布
23 浏览

win10 uwp xaml 绑定接口

本文告诉大家如何在xaml绑定属性使用显式继承接口。早上快乐就在你的心问了我一个问题,他使用的属性是显式继承,但是无法在xaml绑定我写了简单的代码,一个接口和属性publicclassFoo:INotifyPropertyChanged,IF1{publicFoo(stringname){_name=name;}privatestring_name;publiceventPropertyChangedEventHandlerPropertyChanged;protectedvirtualvoidOnPropertyChanged([CallerMemberName]stringpropertyName=null){PropertyChanged?.Invoke(this,newPropertyChangedEventArgs(propertyName));}stringIF1.Name{get{return_name;}set{_name=value;

.Net 2017-12-23 发布
22 浏览

vue-cli 安装失败Failed to download repo vuejs-templates/webapck-simple: Response code 404 (...

新学习vue的萌新们经常会遇到各种各样的坑。例如上面这个报错。这个一般是命令行面板写错单词导致。正确:vueinitwebpack-simple.(注意“.”点,指当前目录)正确2:veuinitwebapckproject(project自己取得名字);在安装之前,请确保在命令行输入vue-V(大写V)node-v(小写v)能输出版本号并且命令行输入“pinggithub.com”能连接得上。连接不上也无所谓,百度淘宝镜像,按照要求装个cnpm就ok拉。好东西大家一起分享-=。

JavaScript 2017-12-22 发布
28 浏览

WebPack中UMD输出的配置细节

上周在做一个公用代码,计划导出为umd的格式,以同时支持import、require和