Policy Analysis
项目的框架:Mysql和Derby做数据的存储,FreeMarker做web页面表单的验证,Guava缓存器做policy的缓存,groovy让用户扩展验证逻辑
项目的难点:
下载任务并发的处理,日志的分发,并行处理
遇到的问题:因为一个用户一天日志下载的时间比较长,需要高效的划分下载的任务。将用户的日志按照天下载,那样已经下载的日志就可以不用重新下载。涉及到对同个用户同时分析时并行下载日志的问题。如线程1对用户A分析1-2的日志,线程2对用户A分析2-3号的日志。则将下载的任务分为1,2,3三个任务,线程1需要等待1,2任务完成。线程2需要等待2,3任务完成。
日志的分发:engine负责获得日志的key,并且按照key获得具体的work,将日志加到work的mailbox中,然后submit work
项目的优化:优化了下载任务
基础知识补习:
1. 数据库的操作
创建可以ConnectionFactory 获得相应DB的connection对象,(connection对象一般由ConnectionPool创建并缓存)。调用Connection的prepareStatement ()函数创建PrepareStatment,然后设置参数,如果是查询操作的话,会返回一个result set,将result set转换成相应的对象
2.Guava缓存器http://blog.csdn.net/desilting/article/details/11768773
自动载入键值至缓存;
当缓存器溢出时,采用最近最少使用原则进行替换。
过期规则可基于最后读写时间。
设置键值引用级别。
元素移出通知。
缓存访问统计。
3.FreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出http://baike.baidu.com/view/1278430.htm?fr=aladdin
能够生成各种文本:HTML、XML、RTF、Java源代码等等。
易于嵌入到产品中:轻量级;不需要Servlet环境,不需要部署tomcat。
插件式模板载入器:可以从任何源载入模板,如本地文件、数据库等等。
可以按所需生成文本:保存到本地文件;作为Email发送;从Web应用程序发送它返回给Web浏览器
4.Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在 JVM 上的特性,Groovy 可以使用其他 Java 语言编写的库。
SATF
项目的框架:Cassandra做数据的存储,用HttpServer 启动了一个server处理http请求,用Cucumber做模板
项目的难点:
需要修改cucumber源代码支持test case的并行处理
项目的优化:引入了Cucumber,开发人员将每步的代码逻辑实现,并设置一句自然语言作为代码的映射,QA只要用自然语言表达每个case就可以高效扩展
基础知识补习:
1.Cucumber http://baike.baidu.com/view/1215750.htm?fr=aladdin
是一个能够理解用普通语言描述的测试用例的支持行为驱动开发(BDD)的自动化测试工具
2.Cassandra http://baike.baidu.com/view/1350234.htm?fr=aladdin
是一套开源分布式NoSQL数据库系统
OTM
项目的难点:快速的迁移数据,MySQL schema和index的设置
Communications link failurehttp://frankfan915.iteye.com/admin/blogs/1672465
项目的优化:1. 用truncate代替delete
2.合理设置numberOfBindRowsAllocated,节省空间
3.关闭Mysql的 log,delete index
相关推荐
在实际使用`google-java-format` 时,开发者可以根据项目需求选择相应的配置,例如设置代码风格的版本,决定是否忽略某些规则,或者自定义格式化行为。同时,通过持续集成(CI)流程,可以确保提交到版本控制系统的...
这款工具遵循Google的Java编程风格指南,能够帮助开发者快速整理和标准化他们的源代码,提高代码的可读性和团队协作效率。 在实际的项目开发过程中,代码格式化工具的重要性不言而喻。它不仅简化了代码审查过程,...
9. **实用小工具**:描述中提到的“收集文件夹内所有文件的实用小工具”可能是一个辅助工具,用于整理项目文件或自动化某些文件操作,这可能涉及文件遍历、文件复制和文件属性检查等功能。 这个项目不仅提供了实际...
这是我自己整理JAVA基础知识写的一个网上银行项目,里面包含了集合、接口、枚举、反射、泛型、多线程、I/O流操作、XML文件解析、工厂模式等知识点,基本上包含了JAVA的一些重要的常用的技术点,自我觉得是一个检验...
它能快速地将杂乱无章的Java代码整理得井井有条,遵循Google的Java编程风格指南。 在Java开发中,代码格式的一致性至关重要,因为这直接影响到代码的可读性和维护性。`google-java-format` 可以作为一个预提交检查...
【标题】"xiaobao---java开发编程笔记整理"是一份由xiaobao编写的关于Java开发的综合学习资料,其中涵盖了Eclipse集成开发环境、Struts、Hibernate和Spring等多个关键技术和框架。这些技术在Java开发领域中占据着...
### JAVA真实包装项目经验——二手车项目面试知识点梳理 #### 一、项目开发流程 1. **项目立项**:项目的启动阶段,确定项目的目标、范围、预算等。 2. **需求分析会议**: - 项目经理、研发部和产品部共同参与。 ...
这意味着它可能是一个库或者框架,可以集成到Java项目中,为开发者提供特定的功能支持。 【压缩包子文件的文件名称列表】揭示了Fmath的核心组件: 1. **mathml-java-3.1.jar**:这是MathML(Mathematical Markup ...
1. 使用 db/shopping.sql 中的 sql 语句创建数据库与数据库表 > 把你的数据库的账号密码改成root/root 或者修改 ShopConfig.java 中的...有谁想玩的话,发邮件给我## idea启动项目- 本地安装mysql(驱动用的是mysql-co
通过Eclipse MarketPlace,开发者可以找到各种各样的插件,涵盖测试、项目管理、版本控制等多个方面,满足不同项目的特定需求。 5. **绿色无广告**:"绿色"通常指的是无需安装、解压即用的软件,"无广告"意味着用户...
本资料"Java项目经验汇总(简历项目素材)"提供了丰富的实例和指导,帮助Java开发者构建出引人注目的简历项目部分。 首先,理解Java项目经验的重要性。Java是一种广泛应用于企业级应用开发的编程语言,其稳定性和...
标题和描述中提到的"eclipse-java-google-style-1.1"和"intellij-java-google-style-1.1"指的是Google为Eclipse和IntelliJ IDEA这两个流行的Java集成开发环境(IDE)提供的代码风格规范。这些规范是Google为了保持代码...
但从这些内容片段中,我们仍然可以推测出一些与JAVA项目经理相关的知识点和技术术语。以下是对这些内容的解读和知识点整理: 1. **项目管理方法论**:文档中出现的“CMM”可能是指软件工程中的能力成熟度模型...
java基础项目(35个java游戏)Java实用源码整理learns
Java酒店管理项目是一个基于Java编程语言的典型应用实例,它涵盖了酒店日常运营中的各种功能,如客房预订、入住退房管理、订单处理等。通过这个项目,开发者可以深入理解Java在实际业务场景中的运用,以及如何构建一...
【Java酒店管理项目】是一个基于Java编程语言的实用软件开发案例,主要针对酒店行业的日常运营进行模拟和管理。这个项目涵盖了酒店预订、客房管理、客户信息处理、订单处理等多个核心功能,是Java初学者和进阶者提升...
为了帮助大家更好地完成毕业设计,我们特地整理了一系列Java毕业设计项目参考资源,包括源代码、MD文档、笔记等等,希望能对您的学习与研究提供有力支持。 项目源代码:涵盖了多个Java毕业设计项目的完整代码,包括...
这份"java常用技术整理-基础架构方面.rar"的压缩包文件很可能包含了一系列关于Java基础架构技术的文章、笔记或教程,旨在帮助开发者系统地学习和掌握这些知识。 首先,Java的基础架构涉及JVM(Java虚拟机)。JVM是...