我们在我们公司使用 Squid 缓存。有什么办法可以缓存 YouTube 视频吗?
欢呼:)
我们有一个用例来缓存 300 多万条这样的数据,每条数据都有一个唯一的键。
我知道这是非正统的,但是我的公司建议将 DNS 用作小数据(<512 字节)的快速分布式缓存。
DNS 条目将是 {Key}.{散列密钥的模数}.mycompany.local。
即 U5333145311.1.mycompany.local
我们将以每秒 5000 到 7500 次的速度从 10 到 15 个服务器发出请求。
我们将通过区域文件更新每个 DNS 服务器。
作为一名程序员,这对我来说是全新的
谢谢
更新:数据是一个 1 到 30 个整数的数组(不是 512K 抱歉),所以它非常小。我的来自网络运维的 CTO 喜欢这个解决方案,因为它是一个已知的、成熟的系统,并且内置了容错功能,他可以使用网络运维来管理它。我很谨慎,但思想开放。
几个月前我在 Stack Overflow 上问过这个问题,但没有得到任何有用的答案。也许这里有人有更好的信息。
请注意,我说的是客户端 DNS 解析器缓存。此消息与 Windows DNS 服务器无关。
我有一个 C# 程序,可以进行很多 DNS 解析。因为该HTTPWebRequest组件不允许我更改 Host 标头,所以我无法创建自己的内部 DNS 缓存。所以我必须依赖 Windows DNS 缓存,它似乎无法更改。
有一篇关于 Windows Server 2003 中的 DNS 缓存注册表设置的相当不错的TechNet 文章,但我无法证明在 XP、Server 2003、Vista 或 Server 2008 中设置它们有任何作用。我通过所有其他页面找到的谷歌搜索要么引用该页面,要么对其进行解释,有时是错误的。
Windows 的ipconfig命令有一个/displaydns开关,可以输出缓存的内容。据我所知,这是确定 DNS 缓存大小的唯一方法。在我对具有 2 GB 内存的 32 位 Windows XP 机器上进行的实验中,无论我将 DNS 缓存注册表值设置为什么,我最终都会在缓存中得到 30 到 40 个项目——即使在进行了数千次 DNS 解析之后. 在具有 16 GB 内存的 64 位 Windows 2008 机器上,我的缓存中总是有 270 到 300 …
我正在运行一个应用程序服务器并记录所有请求以供稍后分析。我昨晚注意到的一个有趣趋势是,我有一位来自德克萨斯州的访客在 FIOS 上与加利福尼亚的 bluecoat 共享相同的流量。
什么会导致流量相同?对于访问者提出的每一个请求,bluecoat 都会在他请求的几毫秒内做出一个。如果是缓存,为什么会有相同的请求?它不会通过缓存/代理,而我只会看到代理请求吗?
我只是好奇,这是一个有趣的模式,它显示了 DDoS 攻击的相似之处,但资源要少得多。访问者的计算机上是否有可能存在恶意软件?
还有其他想法吗?
有人可以向我解释以下概念,因为它们与测量来自我的网站的数据传输有关。
缓存、准备好的缓存和空缓存有什么区别?
你能给出每个的定义吗?
我目前正在旧文件服务器中测试 ZFS(Opensolaris 2009.06),以评估其对我们需求的使用。我们目前的设置如下:
我们要评估一个 L2ARC 的使用,所以当前的 ZPOOL 是:
$ zpool status
pool: tank
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
afstank ONLINE 0 0 0
raidz1 ONLINE 0 0 0
c11t0d0 ONLINE 0 0 0
c11t1d0 ONLINE 0 0 0
c11t2d0 ONLINE 0 0 0
c11t3d0 ONLINE 0 0 0
raidz1 …Run Code Online (Sandbox Code Playgroud) 即使存在 cookie,我也想使用 Varnish 来缓存某些页面。我需要注意 3 种可能性:
预期的行为是:
我已经阅读了一些关于 Varnish 的文档,但我不知道这是否是默认行为,或者我是否必须在 VCL 中进行一些设置才能使其发生。
我工作的中小型在线零售公司使用 Akamai 作为我们的静态图像 CDN,但我想知道它是否可能会造成伤害而不是帮助,如果它不是最理想的,我们应该怎么做。
我们每月获得大约 300 万次浏览量和 40 万独立访问者。我们有 100k+ 不同的静态图像出现在我们的各种网页中(数千种产品中的每一种都有几个不同的图像等)。
问题是 Akamai 的服务器从源服务器(我们自己托管)请求文件,以处理大约 40% 的浏览器请求。这意味着很多(在我看来)我们的客户没有必要等待:40% 的请求必须在返回给客户之前在 Akamai 和我们的原点之间进行往返。
服务器 TTL 不是问题;它们都设置为 365 天。所以它似乎要么
所以我开始怀疑是否可以通过服务器较少的 CDN 为我们提供更好的服务,我的想法是使用较少的 CDN 服务器,我们的更多图像将更频繁地缓存在每个服务器上,并且可能会在缓存中停留更长时间不被换出。另一方面,对于不靠近其中一台服务器的用户来说,更少的服务器可能意味着更多的延迟。
我们正在查看两个基于 Akamai 的选项,但(还)尚未启动:
所以我的问题是:
你们是否都认为将文件缓存在更少的服务器上会更好,但代价是某些用户的额外延迟;或者延迟是不是比原点往返更大的问题?
如果我们使用 NetStorage,有没有人知道往返 NetStorage“原点”通常需要多长时间?
我错过了什么吗?我还应该在这里考虑什么?
使用 Akamai NetStorage 与使用 Akamai 的边缘服务有什么区别?以下是我认为区分它们的概念,但我想从更有经验的人那里获得更多详细信息。
网络存储
这实际上是图像、JS、CSS、XML、视频、其他静态资产等内容的高性能托管场所。您实际上是将 FTP 文件传输到特定位置并从特定 Akamai URL 检索它们。这些资产都非常快,因为它们被缓存并在全球分布。
边缘服务
这不是托管选项,而是现有托管的缓存选项。所以你告诉它缓存什么(文件类型、路径等)以及缓存多长时间。它转到托管在您的源服务器上的那些项目,并将它们全局缓存到其服务器,然后您的实时站点指向 Akamai 的边缘,以将它们“托管”给公众。
我们正在使用 Newrelic 来衡量我们的 Python/Django 应用程序性能。Newrelic 报告说,在我们的系统中,“Memcached”正在平均12ms响应命令。
深入到前十个左右的 Web 视图(按请求数),我可以看到有些Memcache get占30ms; 我无法Memcache get在小于10ms.
有关系统架构的更多详细信息:
~0.5msMemcached 的响应时间不是10ms很慢吗?
据我了解,如果您认为“Memcache 太慢”那么“您做错了”。那我做错了吗?
这是memcache-top命令的输出:
memcache-top v0.7 (default port: 11211, color: on, refresh: 3 seconds)
INSTANCE USAGE HIT % CONN TIME EVICT/s GETS/s SETS/s READ/s WRITE/s
cache1:11211 37.1% 62.7% 10 5.3ms 0.0 73 9 3958 …Run Code Online (Sandbox Code Playgroud) cache ×10
cdn ×2
http ×2
cookies ×1
hosting ×1
http-cookie ×1
latency ×1
memcached ×1
memory ×1
opensolaris ×1
performance ×1
proxy ×1
python ×1
security ×1
squid ×1
ssd ×1
varnish ×1
web-hosting ×1
web-server ×1
website ×1
windows ×1
zfs ×1