惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog RSS Feed
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
The Register - Security
The Register - Security
Recorded Future
Recorded Future
D
Docker
I
InfoQ
Recent Announcements
Recent Announcements
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
A
About on SuperTechFans
N
Netflix TechBlog - Medium
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
Spread Privacy
Spread Privacy
AWS News Blog
AWS News Blog
F
Full Disclosure
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Threatpost
C
Cisco Blogs
P
Proofpoint News Feed
Google DeepMind News
Google DeepMind News
Security Latest
Security Latest
The Hacker News
The Hacker News
Microsoft Security Blog
Microsoft Security Blog
B
Blog
IT之家
IT之家
Latest news
Latest news
D
DataBreaches.Net
T
Tor Project blog
Scott Helme
Scott Helme
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Threat Research - Cisco Blogs
博客园 - 司徒正美
S
SegmentFault 最新的问题
宝玉的分享
宝玉的分享
Project Zero
Project Zero
T
The Exploit Database - CXSecurity.com
P
Privacy International News Feed
Last Week in AI
Last Week in AI
C
CERT Recently Published Vulnerability Notes
WordPress大学
WordPress大学
博客园 - 【当耐特】
C
Cybersecurity and Infrastructure Security Agency CISA
G
GRAHAM CLULEY
小众软件
小众软件
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 聂微东
酷 壳 – CoolShell
酷 壳 – CoolShell
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 宝玉

如何训练你自己的大型语言模型 设计系统(Design System),设计和开发之间的“DevOps” 如何写好绩效考核中的年终总结? 从技术高手转型做技术管理,不敢放手把事情给别人做怎么办? 从两周发布上线到一周发布上线,如何做到高效稳定? 项目一再跳票?试试这一招:用Deadline倒逼生产力 如何对Code Review的评论进行分级 Code Review最佳实践 你的大学会有模拟面试吗?一些常见面试问题背后的逻辑是什么? 从软件工程的角度解读任正非的新年公开信 记在美国的一次校园招聘 为什么软件工程教科书上的内容和现实的软件项目之间存在着一定差异? - 宝玉 - 博客园 有关技术分享 程序员也可以懂一点期望值管理 Make it run, make it right, make it fast 南通大学《构建之法》课程助教总结 如何高效的学习掌握新技术 Nodejs开源项目推荐 iOS客户端的在线安装和更新——针对ADHoc证书
AzureDirectory Library for Lucene.Net(续)
宝玉 · 2013-06-01 · via 博客园 - 宝玉

昨天分享过一篇文章《AzureDirectory Library for Lucene.Net》,关于Azure下的全文检索解决方案。补充说明一些内容:

原来对“AzureDirectory Library for Lucene.Net”确实有欠了解,在有了一次教训后,现在有了更深入了解(但还是经验主义,没有足够严谨去看看源码,欢迎斧正)。这个的本质并非是把Azure Store当虚拟磁盘用,开始我还真是这么理解的,所以我被它坑了!其实它是本地建个缓存目录,在检索或建索引的时候把索引文件先从Azure Storage同步到缓存目录,然后每次建索引indexwriter dispose的时候把内容同步过去,如果索引文件大,这就对缓存目录大小要求极高!如果你用内存当缓存目录,那你就要足够大的内存。

如果是用Azure的WebSite,共享模式,给你的磁盘空间是1G,再加上一些程序文件,它会把索引文件缓存到你的临时目录,一会就满了,会导致你网站不正常,升级到保留模式后,选择最小的实例,空间会到10G,基本够用。

如果用它的话,建议用WebRole,相对磁盘空间大一些,特小实例(其实价格和WebSite的共享模式是一样的)有20G空间,加上几个G的系统文件,还能有十几个G。另外如果用WebRole或WorkRole,AzureDirectory对应的缓存目录最好设置在Local Resource(本地资源)下的Local Storage(本地存储),并且给它配置足够大的空间,这样你就不担心报磁盘空间不足的错误。为什么要用Local Storage而不是Web Role/Worker Role的C盘D盘呢?主要两个问题:一个是默认对C盘和D盘下目录没有写入权限,每次虚机回收后,需要远程桌面登录上去配置权限或写启动脚本去做这事;另外用Local Storage你才好方便的配置空间大小的,其他目录似乎超出一定范围就会报空间不足的错误(这个待确认,没有找到资料,从异常信息来看,到一定大小后会有磁盘空间不足的异常,包括Local Storage的空间如果没有指定具体大小,设置为默认,也会到一定大小后报磁盘空间不足的异常)。

我现在索引文件大小应该在10G左右,所以我选了一个小实例的Web Role,用来缓存索引文件的Local Storage给它配了100G的空间,相信足够用很长一段时间了。并且我把建索引的工作也放到Web Role来做了,一者少开一个Worker Role省钱,二者建索引和读索引的缓存目录可以共用,读索引就不必频繁去从Storage同步索引文件回到本地。但要注意建索引会占用较高CPU,所以如果放在WebRole里面去建索引,每次应该建少量索引,不要一次太多。

总的来说,Azure还是非常好的东西,但是很多开发模式和架构思想已经和原来都不一样了,如果用老的思路去设计基于Azure的系统,会走不少弯路,希望大家多多分享交流。

搜索效果演示:http://www.openlab.co/search?q=%E8%A5%BF%E5%B7%A5%E5%A4%A7+and+%E5%AE%9D%E7%8E%89