Home

成像入门

其实我只是感性的解释一下一些基本的原理。 成像同一个点发出的所有光线在焦平面汇聚的结果。从原理上讲,小孔成像是更优的成像方式,因为小孔过滤了光线,让每个像点发出的光只有一束能参与成像,但是这样容易导致亮度偏低,同时小孔也不能像理论上说的足够小。 如果胶片/CCD刚好位于焦平面上,那么成像最清晰,焦平面前后的一段距离里面,成像虽然不够清晰但是也能接受,出了这个区域就认为不再能够成像。这个区域就是弥散斑所在的区域。对应的物体距离范围叫景深。 镜片如果折光度高的话,那么成像位置靠前,像小,同时光线聚焦点密度增加导致景深增加(算相等的物距,如果两个点聚焦之后的焦深不大的话,那么把底片移动到其中一个点上,另一个点的弥散圈也不大)。这就是短...

Read more

Nginx 安装配置总结

具体的可以看参考文献里面的三篇博客,中间遇到一个问题,nignx提示无法找到php文件。主要有两个原因: 确定nginx工作线程的启动用户有权限访问www-root,需要修改nginx.conf的这里: user www-data; 确定www-root配置正确,需要修改这里: fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 参考文献: [1] nginx配置入门, http://www.nginx.cn/591.html [2] Nginx安装, http://www.nginx.cn/install...

Read more

总结STL的通用算法基本形式

stl的通用算法基本有如下四种形式: alg(beg, end, params):使用源输入作为输出 alg(beg, end, dest, params) :使用dest作为输出,需要保证有足够的空间,所以往往使用inserter alg(beg, end, beg2, other params):beg2作为输出,假定beg2开始的范围至少跟beg和end指定的范围一样大。 alg(beg, end, beg2, end2, params):beg2 end2作为输出 举例: 第一种比如: find(beg, end, search_value); sort(beg, end); accumulate(beg, end, original_value...

Read more

c/c++ 文件/流读取函数总结

针对文本文件的, c++主要有如下几种吧 getline: 实现上,输入istream流,需要支持特定traits的迭代器。从流里面每次一行读入string,遇到delim结束。 template<typename _CharT, typename _Traits, typename _Alloc> basic_istream<_CharT,_Traits>& getline(basic_istream<_CharT, _Traits>& __is, basic_string<_CharT, _Traits, _Alloc>& __str, ...

Read more

记工作中遇到的一个性能问题

工作中遇到一个问题,更新schema的过程发现耗时太长,30多s。导致其他一系列流程阻住。记录一下这个问题的分析解决。 开始觉得估计是数据量大sql执行时间过长,整个过程分为3条sql,也就是schema被分表成为的三个表的查询: select * from __all_table; //主键table_id select * from __all_column; //主键table_id,column_id select * from __all_join;//主键left_table_id, let_column_id 之后在内存里面做Join。由于是有序的,所以join过程直接采用了二分查找。之于没有用散列做Join或者直接 SQL语句里做...

Read more

分布式选主-笔记

数据库主备复制 同步模式 备机是否写盘之后应答 性能收主备机之间通讯距离,网络抖动影响 异步模式 主机不等待备机的应答 性能最优,可能造成数据丢失不一致 半异步 超过多数成功则返回 奇数台机器才可以 3/5 > 2/3 > 2/2

Read more

oceanbase事务引擎-笔记

外存数据库的特点 每次写入需要读取一个完整单元,不同的块做不同的修改,再写回硬盘 oceanbase的特点 本质上差不多,但是快大小不一样,但是增量数据(修改点)集中存储。可以更好的利用内存,利用低峰期合并到内存。但是每次需要读取静态数据和修改。 相对来讲,优化了写入,牺牲了部分读取(完全命中bloomfilter的可以不读静态,相当于内存数据库,不存在动态数据的查询相当于传统数据库)。

Read more

记一个实际中遇到的覆盖问题

工作中遇到一个继承结构如下: ObServerSchemaService : init_core_schema(const ObSchemaManagerV2 &schema) | ObRootSchemaSerivice : init_core_schema() 基类的init_core_schema接收一个核心表的schema,而这个schema往往是从rootserver传过来的,所以下面的子类RootSchemaService不需要传参,直接自己生成就好了。 问题是如果在ObRootSchemaService的对象上想要调用ObServerSchemaService的init_core_schema函数会报错。因为命名空间上Root的会覆盖Se...

Read more