05 2019 档案
摘要:在第二个教程中,我们了解到如何在多个worker中使用Work Queues分发费时的任务。 但是,如果我们需要在远程运行一个函数并且等待结果该怎么办呢?这个时候,我们需要另外一个模式了。这种模式通常被叫做Remote Procedure Call 或者RPC. 在这个教程中,我们将使用Rabbit
阅读全文
摘要:上一节,我们讲了direct exchange,这节我们讲下topic exchange Topic exchange 发送到topic exchange的messages不可以有一个随意的routing_key, 它必须是使用.分隔的一些词的集合。例如: "stock.usd.nyse", "ny
阅读全文
摘要:上一节,是广播日志message到很多的receivers. 这节,我们讲订阅其中的一个子集。例如,我们想可以把危机的error message导到log file。而仍然可以打印所有的log messages到控制台。 这里使用到Direct exchage Direct exchange 在使用
阅读全文
摘要:上一个教程中,我们创建了一个work queue. 其中的每个task都会被精确的传送到一个worker. 这节,我们将会讲把一个message传送到多个consumers. 这种模式叫做publish/subscribe(发布/订阅). 为了说明这种模式,我们将创建一个简单的日志系统(loggin
阅读全文
摘要:目录: 轮询调度(Round-robin dispatching):即依次分配分配任务给worker。 消息答复(Message acknowledgement):在consumer处理完之后,进行消息答复。避免杀掉worker后,message消息。 消息持久化(Message durabilit
阅读全文
摘要:RabbitMQ就是一个消息代理(message broker),可以用来接收和发送消息。 消息队列有一些黑话,我们来看下: Producer : 发送message的程序 Queue : 可以用来存储message Consumer : 接收message的程序 注意,producer 和 con
阅读全文
摘要:这里的数据处理,指的是页面上的数据与Action中的数据的处理。 struts2中有3种方式来接收请求提交的数据。分别是:属性驱动方式、对象驱动方式、模型驱动方式 1. 属性驱动方式 要求页面中的表单项的名称与Action处理类中的属性名一样, 并且在Action处理类中提供属性的get/set方法
阅读全文
摘要:首先action是用来处理请求的, 这里struts2中的action的3中创建方式。 1.无侵入性的创建方式。 无侵入性:使用第三方的框架,不直接继承或实现第三方提供的类或者接口就说是无侵入性的。 无侵入性说明框架耦合度低,方便扩展,重构方便 2.继承struts2提供的ActionSupport
阅读全文
摘要:这里主要记录下asp.net core web页面上进行导入导出excel的操作。 主要是导入,因为现在使用的很多前端框架(例如kendo ui)本身就有导出的功能。 这里使用到EPPlus.Core,其实对于excel的导入导出还可以使用NPOI, 这里讲解EPPlus的方式 1.创建asp.ne
阅读全文
摘要:目录: 一. Quartz的API 二.Trigger 的使用 三.使用 JobDataMap 来往Job中传值 四. Calendars 五.SimpleTrigger 六.CronTrigger 一. Quartz的API IScheduler - 与 scheduler 进行交互的主要接口 I
阅读全文
摘要:在 java之struts框架入门教程 基础上,进行下列操作 1.结构对比 原来的项目结构图 现在的结构图 即从结构上可以看出,在HelloStruts项目中增加了config 文件夹(Source Folder) 及user.xml 文件 2.修改配置文件,使struts.xml 中包含 user
阅读全文
摘要:1.struts2的执行流程 请求 >Tomcat(判读项目是否存在) >项目的web.xml >struts2的核心过滤器 >判读请求的资源(hello.action-会将后缀去掉)与struts.xml中的所有action的name进行匹配看是否查到- -->根据action中配置的class去
阅读全文
摘要:这里讲下,quartz这种任务调度程序的简单使用 这是使用的quartz的3.x 版本 2.x 版本与此稍有区别,可以在网上查看2.x版本教程 使用语言为c# quartz的使用分为几个步骤 其中2步骤也可以放到步骤5后面 另外,别忘记在nuget管理器中引入quartz 代码如下 运行程序,效果图
阅读全文
摘要:本教程主要讲述struts的简单入门操作 使用的是myeclipse工具 1.创建web项目 2.复制struts必要的jar包到 WebRoot/WEB-INF/lib 下 jar包列表如下: 导入后的项目结构如图 3.在 WebRoot/WEB-INF 下添加 web.xml 内容如下: 目录结
阅读全文
摘要:继上篇 c#之添加window服务(定时任务) 基础之上, 这篇文章主要讲述,使用winform程序来控制window服务的安装,启动,停止,卸载等操作 1.在同一个解决方案添加winform项目,如图 2.在winform设计器中添加按钮 修改按钮名称依次为:安装服务、启动服务、停止服务、卸载服务
阅读全文
摘要:本文讲述使用window服务创建定时任务 1.如图,新建项目,windows桌面->windows服务 2.如图,右键,添加安装程序 3.在下图安装程序 serviceInstaller1 上右键,修改serviceName和Description 4.如图,在 serviceProcessInst
阅读全文
摘要:这里列举几个经过验证的可用的CORS使用示例, 方便在需要的时候可以直接使用 示例1 这种比较常见,即在ConfigureServices中添加中间件及定义其策略;而在Configure中把中间件设置到管道中 示例2 注意,这个示例中,直接在Configure中的app.UseCors中设置的跨域的
阅读全文
摘要:跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的Web应用被准许访问来自不同源服务器上的指定的资源。当一个资源从与该资源本身所在的服务器不同的域、协议或端口请求一个资源时,资源会发起一个跨域 HTTP 请求。 什么情况下
阅读全文
摘要:有的时候我们可能会需要打开多个文件同时进行编辑,例如把一个文件的内容复制到另一个文件中时; 多文件编辑 多窗口功能 1.当有一个文件非常大时,查阅到后面的数据时需要对照前面的数据,但是又不想前后来回翻页时; 2. 当需要对照两个文件,但是又不想用多文件编辑时;
阅读全文
摘要:这里记录下linux在vim编辑器中的常用命令 vi 的三种模式: 一般模式:以vi打开一个文件时,就是一般模式;可以移动光标,删除字符或删除整行,可以复制、粘贴等操作 编辑模式:在一般模式按下 i 进入编辑模式(或者 l,o,O,a,A,r,R) ; 按下 Esc 退出编辑模式 命令行模式:在一般
阅读全文
摘要:vmware有三种网络设置模式,分别是Bridged(桥接),NAT(网络地址转换),Host-only(私有网络共享主机) 1.Bridged(桥接) 桥接模式默认使用的是:VMnet0 什么是桥接模式?桥接模式就是把主机网卡和虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机
阅读全文
摘要:这里几天一直在搞vm下的linux主机的网络问题,这里做个总结 这里使用的NAT连接方式 1.首先保证本机联网正常 2.检查虚拟机相应的服务(VMware NET Service 和 VMware Workstation Server)是否已确认打开 检查方式1: 可以把服务设置为自动启动,也可以每
阅读全文
摘要:这一节主要讲如何测试跨域问题 你可以直接在官网下载示例代码,也可以自己写,我这里直接使用官网样例进行演示 样例代码下载: Cors 一.提供服务方,这里使用的是API 1.创建一个API项目。或者直接下载样例代码 2.像之前讲的那样设置允许CORS,例如: 使用的时候,注意 WithOrigins(
阅读全文
摘要:接上篇的允许跨域 4.CORS 策略(Policy)的选项 这里讲解Policy可以设置的选项: 设置允许的访问源 设置允许的HTTP methods 设置允许的请求头(request header) 设置暴露的响应头(response header) 跨不同源请求的证书(Credentials)
阅读全文
摘要:这篇文章介绍如何允许跨域访问 浏览器安全不允许不同域名的网页之间发送请求。这种限制叫做同源策略(the same-origin policy)。 同源策略可以防止一个恶意的站点读取另一个站点的敏感数据。 有时候,你想允许网站发送跨域的请求到你的应用。 Cross Origin Resource Sh
阅读全文