`
mysh
  • 浏览: 29489 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论
文章列表
很多时候, 当后端服务出现性能问题, 如何调优是个难题, 因为当业务变得很复杂, 定位问题十分困难. 企业开发中常用的spring构架提供了一个很好的机制 AOP, 方便我们快速定位问题.   这里演示一个组件, 利用AOP, 打印出 spring 调用栈耗时.     @Component("performanceInspector") public class PerformanceInspector { private static class InvokeInfo { List<MutableTriple<Integer ...
前阵子做图像搜索功能, 对比过一些搜索算法, 发现 sift 比较能满足我的需要, 它在图像旋转, 比例缩放, 图像扭曲的情况下也能有很好的识别效果, 在网上找了一些资料, 有些介绍了算法的细节, 有些做了对比评测 www.cscjournals.org/csc/manuscript/Journals/IJIP/volume3/Issue4/IJIP-51.pdf 2013计算机视觉代码合集 - Note of Transposition - 博客频道 - CSDN.NET Computer Vision Algorithm Implementations Fiji Is Just ...
http://projecteuler.net/problem=26 找 d<1000 的 1/d 中有最长小数部分循环段的d.   原想直接把结果用 double 存起来, 打印出来找找就好了, 后来发现 double 的精度不够某些循环段... 还好小学算术做得多, 观察发现如果除数再次出现, 小数部分才会开始循环, 于是找重复出现的除数就好了.   45ms @Test public void t2() { int maxC = 0, maxI = 0; List<Integer> ds = new ArrayList<> ...
  http://projecteuler.net/problem=12   求因数个数大于500的数, 关键在于下面两个隐藏的条件 triangle(i)=i*(i+1)/2 divisors(a*b)=divisors(a)*divisors(b)   countDivisors 其实它还可以优化成递归求解, 而不是一个个去数, 不过量不大, 就算了.   76576500 576 23 ms     @Test public void t1() { int d; for (int i = 7; i < Integer ...
发现一个好玩的站, 没事刷刷题 http://projecteuler.net/problem=14   找一百万以内的最大起始数, 一个个数过去就好了, 用上DP, 45ms   @Test public void t2() { final int R = 1_000_001; int[] record = new int[R]; record[1] = 1; long ti; int c, maxCount = 0, maxR = 0; for (int i = 2; i < R; i++) { c = 0; ti ...
正在学习 Clojure,为了方便跑demo,把 Clojure RT 抠出来,用 rSyntaxTextarea 组件弄了下语法高亮,就有了这么个解释器。   做的时候玩了下 java 8 的闭包,所以它需要 jre8 才能跑。 上面框是结果输出区,下面框是代码编辑区 快捷键: esc:清空编辑框 F1:清空输出框 Ctrl+Enter:提交编辑代码 Alt+Left/Right:代码编辑历史 下载(dropbox)
前段时间在找代码片段的管理工具, 找不到满意的, 遂决定自己做一个. 因为在编码的过程中时常发现某个功能以前做过了, 想去找原来的代码, 但是原来的代码早不知道扔哪去了, 所以我希望有个工具能帮我管理这些代码片段, 以便需要的时候可以快速找到它们.   其实代码复用的最好方式应该是组件化, 但是有些代码, 或是配置之类的东西没法组件化, 只能以片段的形式存在, 于是找到它们变成一个头痛的问题. 两年前做过一个类似的东西, 只是功能弱了点, 我自己也很少用, 所以这个算是2.0版本了.        主要功能: 实时快速查找(类似 eclipse 里 preferences 的 ...
去年写了个网页爬虫, 放在 https://code.google.com/p/mysh-crawler/, google code 常被政府墙掉, 搞不懂代码有啥好墙的, 这里留个备份.   爬虫特点: 1. 插件驱动. 爬虫本身可视作http访问和持久化引擎, 爬虫的目标和数据处理由插件定义 ...
JDK7有不少新东东, 语言特性里有一些更新, 虽然不如 JDK1.5 的泛型/可变参数/for-each循环那么激动人心, 但在平时开发中还是有很大帮助. 个人感觉 try 语句的新特性最有用. 参考: JSR-334 写篇文章记录一下. public class CommonTest { public static void main(String[] args) { List< String> list = ["item"]; String item = list[0]; Set< String > set ...
前阵子搞 zk 与 flash 交互,搞得头破血流,zk 本身带有 flash 标签,但只能当播放器用,没法进行比较复杂的 flash 控制,如调用 flash 的内部方法。flash 也没法直接通过前端与 zk 组件交互,于是自己搞了一个中间件,用于 zk 与 flash 的交互,使得 zk 可以直接调用 flash 的内部方法,flash 可以直接向 zk 发送数据,同时加入了一点同步控制,因为 flash 虚拟机是异步单线程的,且 zk 的每个 flash 调用都是独立的,在实际执行过程中无法保证调用顺序。 需要 zk 5.0 以上版本,flash 支持 flex sdk3 和 sdk4 ...
之前写了篇文章,描述了 AS3 模拟实现匿名类的一种方法(AS3 匿名类实现模拟(有类型)),它虽然有静态语言的一些优点,如有类型,风格还算优雅,但是显然需要付出一些代价,如要多写几个类型定义。 假如需要的匿名实现很多,而且类型不是那么重要的时候,可以采用简单一点、动态一点的方式,这种方式更像 JavaScript: package zzx.test.flex.closure2 { import mx.controls.Alert; public class Anonymouse { public function test1():void{ testAnon ...
Java 中的匿名类用起来十分灵活,它可以有效地减少类的个数,AS3尚未直接支持匿名类实现,不过它支持闭包,可以借助闭包来模拟Java中的匿名类实现: 要实现匿名类的接口 package zzx.test.flex { public interface Interface { function i1():void; function i2(name:String):void; function i3(value:int):int; function i4():void; } } 写一个实现这个接口的辅助类 p ...
本文假设读者已了解 Flex 端如何通过 远程对象(RemoteObject)、以及 BlazeDS 框架调用 Java EE 服务器的远程方法,之前研究这东西花了不少时间,走了些弯路,这里写了些总结给需要的朋友。 JavaEE应用服务器(Tomcat) + BlazeDS(AMF ...
Global site tag (gtag.js) - Google Analytics