resin-pro-4.0.20 crack 破解文件下载

resin-pro-4.0.20 破解文件下载pro.jar resin pro 4.0.20 Full Cracked download. 下载pro.jar文件,覆盖原来lib目录的pro.jar文件即可。 仅供学习使用,请在下载后24时间内删除。

varnish,squid,apache,nginx缓存文件比较

一,测试环境 1,硬件是奔腾双核,机子三年前买的。系统是archlinux 2,测试varnish和squid的时候,web服务用的apache 3,测试apache的时候,启动了5个进程,不过随着压力的增加,进程会增加的。 4,测试nginx的时候,启动了十个nginx进程,20个php-cgi进程   5,varnish,squid,nginx用的是反向代理的形势,也就是说访问图片的时候,要先透过缓存工具 二,测试 1,varnish [root@BlackGhost bin]# /usr/local/bin/webbench -c 100 -t 20 http://127.0.0.1:8080/00/01/RwGowEtWvcQAAAAAAAAWHH0Rklg81.gif Webbench – Simple Web Benchmark 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software. Benchmarking: GET http://127.0.0.1:8080/00/01/RwGowEtWvcQAAAAAAAAWHH0Rklg81.gif 100 clients, running 20 sec. Speed=476508 pages/min, 47258114 bytes/sec. Requests: 158836 susceed, 0 failed. 访问了这么次,没有缓存只有一次,效率真的很高。 2,squid [root@BlackGhost bin]# /usr/local/bin/webbench -c […]

初步试用Squid的替代产品──Varnish Cache网站加速器

Varnish是一款高性能的开源HTTP加速器,挪威最大的在线报纸 Verdens Gang (vg.no) 使用3台Varnish代替了原来的12台squid,性能比以前更好。 Varnish的作者Poul-Henning Kamp是FreeBSD的内核开发者之一,他认为现在的计算机比起1975年已经复杂许多。在1975年时,储存媒介只有两种:内存与硬盘。但现在计算机系统的内存除了主存外,还包括了cpu内的L1、L2,甚至有L3快取。硬盘上也有自己的快取装置,因此squid cache自行处理物件替换的架构不可能得知这些情况而做到最佳化,但操作系统可以得知这些情况,所以这部份的工作应该交给操作系统处理,这就是Varnish cache设计架构。 Varnish可以在FreeBSD 6.0和Linux 2.6内核上运行。 1、编译安装varnish HTTP加速器: 引用 wget http://blog.s135.com/soft/linux/varnish/varnish-1.1.1.tar.gz tar zxvf varnish-1.1.1.tar.gz cd varnish-1.1.1 ./configure –prefix=/usr/local/varnish make && make install 2、简单启动varnish守护进程,用本机80端口去反向代理加速127.0.0.1:81上的Apache服务器: 引用 /usr/local/varnish/sbin/varnishd -a :8080 -b 127.0.0.1:81 -p thread_pool_max=1500 -p thread_pools=5 -p listen_depth=512 -p client_http11=on -w 1,10000,120 Varnish官方网站:http://www.varnish-cache.org/ 另有一份PDF文档,说明Varnish原理的:http://ishare.iask.sina.com.cn/cgi-bin/fileid.cgi?fileid=2163384 我测试了一下,在同等配置环境下,Varnish的性能确实要超过Squid,稳定性也不错,值得继续去深入研究。   原文地址:http://blog.s135.com/post/290/

使用Varnish代替Squid做网站缓存加速器的详细解决方案

今天写的这篇关于Varnish的文章,已经是一篇可以完全替代Squid做网站缓存加速器的详细解决方案了。网上关于Varnish的资料很少,中文资料更是微乎其微,希望本文能够吸引更多的人研究、使用Varnish。 在我看来,使用Varnish代替Squid的理由有三点: 1、Varnish采用了“Visual Page Cache”技术,在内存的利用上,Varnish比Squid具有优势,它避免了Squid频繁在内存、磁盘中交换文件,性能要比Squid高。 2、Varnish的稳定性还不错,我管理的一台图片服务器运行Varnish已经有一个月,没有发生过故障,而进行相同工作的Squid服务器就倒过几次。 3、通过Varnish管理端口,可以使用正则表达式快速、批量地清除部分缓存,这一点是Squid不能具备的。 下面来安装Varnish网站缓存加速器(Linux系统): 1、创建www用户和组,以及Varnish缓存文件存放目录(/var/vcache): /usr/sbin/groupadd www -g 48 /usr/sbin/useradd -u 48 -g www www mkdir -p /var/vcache chmod +w /var/vcache chown -R www:www /var/vcache 2、创建Varnish日志目录(/var/logs/): mkdir -p /var/logs chmod +w /var/logs chown -R www:www /var/logs 3、编译安装varnish: wget http://blog.s135.com/soft/linux/varnish/varnish-1.1.2.tar.gz tar zxvf varnish-1.1.2.tar.gz cd varnish-1.1.2 ./configure –prefix=/usr/local/varnish make && make install 4、创建Varnish配置文件: vi […]

15 Best iPhone Games Of June 2011 You Love To Play

Apple is most popular multinational corporation that designs-  Personal Computers, iPhone, iPad, Laptop(MacBook), iPod with the  best known operating system Macintosh( Mac OS x). Now a days, this organization is growing day by day with its new technologies and gadgets like iPhone 4, Macbook Air, OS x Lion etc. Apple has a great bond with […]

android:SQLite数据库 增、删、改、查

学习android开发不可避免的会涉及数据库的使用,android使用的是SQLite数据库。对于SQLite数据库的基本信息这里就不过多的介绍,我们主要看哈是怎么用的就是了。 与以往数据库不一样的地方 以前我们做javaWeb开发时用jdbc连接,现在变了,个人觉得变得简单了。在应用程序中直接就可以去创建数据库,然后对其进行操作。不用像以前写连接代码。 操作数据库 一,SQLiteOpenHelper 类 其中: getReadableDatabase()得到可读的数据库,返回SQLiteDatabase对象,然后通过对象进行数据库操作。 getWritableDatabase()得到可写的数据库,返回SQLiteDatabase对象,然后通过对象进行数据库操作。 onCreate(SQLiteDatabase db)在第一次创建数据库时调用。 onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)在更改数据库时都会调用。 onOpen(SQLiteDatabase db)当数据库打开时调用。 close()关闭数据库。 二,SQLiteDatabase类 这个类提供了对数据库的一些基本操作: insert() delete() update() query() 。。。。。等等。 代码: SQLiteOpenHelper 的子类: import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteDatabase.CursorFactory; import android.database.sqlite.SQLiteOpenHelper; /**  * 通过getReadableDatabase()和getWritableDatabase()可以获得数据库对象。  * 提供onCreate()-创建数据库时,onUpgrade()-升级数据库时,两个回调函数。  */ public class DatabaseHelper extends SQLiteOpenHelper {     // 按要求必须要有构造函数     public DatabaseHelper(Context context, String name, CursorFactory factory,             int version) {         super(context, name, factory, version);     }     // 当第一次得到SQLiteDatabase对象时,调用该方法     @Override     public void onCreate(SQLiteDatabase db) {         String sql = “create table MSG(id int,body varchar(100))”;         db.execSQL(sql);         System.out.println(“创建了一个数据库!”);     }     // 当更新数据库时执行该方法     @Override     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {         System.out.println(“更新了数据库!”); […]

Android 盘点所有Dialog 对话框 大合集 详解

雨松MOMO带大家盘点Android 中的对话框 今天我用自己写的一个Demo 和大家详细介绍一个Android中的对话框的使用技巧。 1.确定取消对话框 对话框中有2个按钮   通过调用 setPositiveButton 方法 和 setNegativeButton 方法 可以设置按钮的显示内容以及按钮的监听事件。 我们使用AlerDialog 创建对话框 AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this); 使用builder设置对话框的title button icon 等等 builder.setIcon(R.drawable.icon);        builder.setTitle(“你确定要离开吗?”);        builder.setPositiveButton(“确定”, new DialogInterface.OnClickListener() {            public void onClick(DialogInterface dialog, int whichButton) {                //这里添加点击确定后的逻辑                showDialog(“你选择了确定”);            }        });        builder.setNegativeButton(“取消”, new DialogInterface.OnClickListener() {            public void onClick(DialogInterface dialog, int whichButton) {                //这里添加点击确定后的逻辑                showDialog(“你选择了取消”);            }        });        builder.create().show(); 这个dialog用于现实onClick后监听的内容信息 private void showDialog(String str) { w AlertDialog.Builder(MainDialog.this)      .setMessage(str)      .show(); } 2.多个按钮信息框 AlertDialog.Builder builder = new AlertDialog.Builder(MainDialog.this); builder.setIcon(R.drawable.icon); builder.setTitle(“投票”); builder.setMessage(“您认为什么样的内容能吸引您?”); builder.setPositiveButton(“有趣味的”, new DialogInterface.OnClickListener() {     public void onClick(DialogInterface dialog, int whichButton) {         showDialog(“你选择了有趣味的”);     } }); builder.setNeutralButton(“有思想的”, new DialogInterface.OnClickListener() {     public void onClick(DialogInterface dialog, int whichButton) {         showDialog(“你选择了有思想的”);     } […]

15 Best Free Android Games You Love To Play

Android is open sources OS (operating System) for smart phones. Google’s mobile platform, the second most popular operating system using smart phones. Android has a big library of free apps and its growing day by day. Android Market has a big collection of free apps and free games, Android gaming market is also growing as well. […]

CentOS 6正式发布,免费的企业级Linux

CentOS 6 正式版已于7月9日发布。 CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同在于,CentOS并不包含封闭源代码软件。 CentOS 6.0 基于上游的 Red Hat Enterprise Linux 6.0 制作,同时基本包含了所有的上游软件包。CentOS 完全遵守上游供应商的再发行政策,并且以百分之百的软件兼容性为目标,但相对于 RHEL ,CentOS 最主要的改变是去除了上游供应商的商标及美工图。 CentOS 6上游版本发行注记和文档:Red Hat Enterprise Linux 6 CentOS 6相对于上游版本 RHEL 6,修改、删除和新增了部分组件,详细情况参阅:发行注记。 官方网站:http://www.centos.org/ 下载页面:http://www.centos.org/modules/tinycontent/index.php?id=15

敏捷方法中测试人员的价值?

敏捷方法在软件开发中受到青睐,特别是在互联网应用服务系统的开发中,越来越多的公司采用敏捷方法,包括XP、Scrum、Lean、Crystal、FDD等。具体的敏捷方法在操作时有一些区别,但基本思想是一致的,如客户至上、拥抱变化、缩短迭代周期、自我组织等。在敏捷方法中,流程相对灵活,强调沟通,通过充分的沟通来及时解决问题,由于沟通充分,文档不是很重要,而且有可能不采用Word等独立的文件格式,而是采用Wiki、空间等web内容方式。 在敏捷方法中,需求变化比较快、产品开发周期很短(一、两周),给软件测试带来很大的挑战!例如,功能测试的自动化实现就比较困难,没有足够时间开发自动化测试脚本,要花大量时间讨论产品特性,及时进行产品的验收测试。自动化测试,更多的是在单元测试这个层次上实现。而单元测试自动化、持续集成等一些关键实践,开发人员能发挥更大的作用,而测试人员难以很好地发挥作用。在敏捷方法中,开发人员的主导作用更明显,讨论需求、实现需求,再修改需求、再实现、再重构,不断完善产品,测试人员容易边缘化。甚至在Crystal方法中,可以不需要测试人员,开发人员能承担所有技术性的工作。 在敏捷方法中,测试人员的价值又如何体现? 首先在需求讨论上,测试人员可以站在客户角度上来阐述自己的观点,和产品人员、开发人员等进行充分的交流和讨论,使自己在用户体验、业务逻辑等等方面的经验充分体现出来。 在开发过程中,测试人员不仅扮演“用户代表”角色,而且可以及时提供更全面的质量反馈,包括代码质量、接口一致性等。测试人员不写代码,可以参与代码复审(code review),将质量问题及时提交给项目组,保证在产品构造的整个过程中质量受到足够的关注,提高质量改进的持续性和可视性。 测试人员还是可以参与单元测试。即使单元测试由开发人员做,测试人员可以推进开发人员进行单元测,检查单元测试状态,如确保单元测试达到80%以上覆盖率,以及帮助开发人员开发出具有良好可测试性的代码。 即使在敏捷方法中,集成测试、端到端(end-to-end)测试、性能测试等是不可少的。因为在敏捷方法中,往往将一个大的系统开发分解成多个小的子系统(模块/组件),集成测试和端到端(end-to-end)测试显得更重要。测试人员在功能测试上工作量会降低,但在这些测试上发挥更大的作用。 随着迭代的不断深入,回归测试的工作量很大,这也是测试人员的用武之地。 测试人员可以针对稳定的产品特性开发自动化测试脚本,这也是一种持续的努力,使回归测试自动化。 测试人员对缺陷进行分析,总结出一些规律,帮助开发人员建立良好的习惯,改进代码的质量。 而且: 在敏捷方法中,我们也要采用敏捷测试,不要再写几十页的测试计划书,而是在每个迭代周期,写出一页纸的测试计划,将测试要点列出来。 在敏捷测试中,可能不需要测试用例,而是针对use case 或user story直接进行验证,并进行探索性测试。而节约出来的时间,用于开发原有功能的自动化测试脚本,为回归测试服务。自动化测试脚本将代替测试用例,成为软件组织的财富。   所以: 敏捷功能测试 = 新特性的手工测试 (use case验证和探索性测试) + 原有功能的自动化测试 (回归测试) 理想情况下,测试人员具有很好的编程能力,可以和开发人员进行角色互换。在当前版本开发(/迭代周期)中担任测试人员角色,在下一个版本开发(/迭代周期)中担任开发人员角色,而开发人员则担任测试人员角色,让开发人员深刻地理解用户的需求角度来考虑系统功能的设计,这样会更好地保证产品的质量,沟通的障碍也会消除,开发的效率会有很大的提高。这也是对测试人员的一个挑战。 敏捷测试也是一个持续测试的过程,而这持续测试的基础是具备一个灵活的、开放的自动化测试框架。测试人员在自动化测试框架构建上、测试工具开发或第3方测试工具前期研究、试用等方面可以发挥主导作用。 项目采用敏捷方法,要获得成功,项目组中每个人都有很强的质量意识,具有质量的主人翁精神,特别是开发人员,每时每刻提醒自己——“质量是构建出来的”,与客户或产品设计人员进行充分沟通,遵守高度一致的质量标准。测试人员将是促进质量文化不断提升的中坚力量。 原作者:朱少民