Google Storage提供付费功能提升限额

Google Storage for Developers 在今天提高了账户的限额并且已经可以使用付费功能来使用最高1T的存储空间。所有的Google Storage for Developer 帐号现在都可以添加付款信息提高自己的账户限额。

Google Storage 资费

  • 存储—$0.17/GB/月
  • 网络
    • 上传
      $0.10/GB
    • 下载
      $0.15/GB 美国和欧洲
      $0.30/GB 亚太地区
  • 请求数
    PUT, POST, LIST—$0.01 每 1,000 次请求
    GET, HEAD—$0.01 每 10,000 次请求

Google还提供了一份service level agreement (SLA)用于说明如何收费,当Uptime在99.0% 至99.9%区间会退还10%的帐单额,95.0%至99.0%之间退还25%,小于95.0%则退还帐单额的50%。

需要开启付费请访问https://sandbox.google.com/storage/m/manage
开启付费后可以看到一个简单的使用量报表

在启用了付费功能后,当前仍会提供100G的免费空间用于存储,但是超过100G外的网络使用量和请求数需要付费。同时新用户在注册时需要提供付款信息。
-EOF-

Google Font API网络字体

Google在今年的Google I/O大会上发布了一个新的服务 Font API,让我们可以方便的使用网络字体。
它使用css 的@font-face来引入字体,事实上这东西很早就有了,只是目前才又将其重新拿了出来扯淡。到目前为止大部分的浏览器支持该属性,以下是浏览器兼容性表。

浏览器 最低版本 支持字体
Internet Explorer 4.0 只支持OpenType字体(eof格式)
Firefox (Gecko) 3.5 (1.9.1) TrueType(ttf格式)和OpenType 字体
Opera 10.0 TrueType和OpenType 字体
Safari (WebKit) 3.1 (525) TrueType和OpenType 字体

当然除了兼容性问题外,各个浏览器对其处理的行为也不一致。

  • Chrome会继续渲染页面剩下的部分,但是在web字体被载入之前,使用该字体的文本位置显示为空白。
  • Firefox先用默认字体显示,当web字体载入后再使用它重新渲染一次。
  • Safari会继续渲染页面剩下的部分,但是在web字体被载入之前,使用该字体的文本位置显示为空白。
  • IE会继续渲染页面剩下的部分,但是在web字体被载入之前,使用该字体的文本位置显示为空白。

另外,在IE中最好将link标签放到<head>中的第一个,如果link放在了<script>标签之后,整张网页在字体被载入前会被阻塞并且不显示任何内容。
所以Google 就搞了个WebFont Loader出来,将所有浏览器的行为搞得跟Firefox一致。

WebFont这玩意也只适合英文网站,中文字体太大,目前的网速来看,要快速下载下来,还是有点困难滴。
-EOF-

ExpressionEngine Core 1.6.9

This is the “core” version of the last release of 1.x.
You can’t find it anywhere from EllisLab website since they are “forcing” people to switch to 2.1 and left no choice for a free trial anymore.
Hope you find it useful for a sneak peek.

这是ExpressionEngine Core 1.x最后一版,并在2.0版本起全部强制收费,不再提供core版免费试用。
下载 [download id=”43″]
-EOF-

万物皆缓存

浏览器缓存很重要,与缓存相关的几个头信息:

  • ETag 与 If-None-Match
  • Last-Modified 与 If-Modified-Since
  • Cache-Control
  • Expires

ETag是用在向服务器GET请求的时候判断文件是否过期。
而Expires是用来判断本地缓存的组件是否过期。
Etag 和 If-Modified-Since 均是用来判断服务器端的文件是否过期。
如果页面已经缓存,当页面刷新(F5)的时候浏览器不会向服务器GET请求。
如果页面(Ctrl+F5)的时候浏览器会向服务器发起询问,If-Modified-Since提交本地记录的组件的日期给服务器,如果服务器查询组件未做修改,那么返回304(Not Modified),如果服务器端文件有做修改那么服务器会返回新的组件给客户端。
Expires 和 Cache-Control用来判断本地电脑中的缓存文件是否过期。

通常的页面访问中,如果是访问一个全新的页面那么ETag,Expires的作用如下:
第一次访问服务器会将ETag和Expires发送给浏览器。
再次访问浏览器会根据缓存来加载组件,此时如果有缓存的就不发起HTTP请求。如果本地有缓存但是依旧强制向服务器提交组件的GET请求,那么ETag就会派上用场。

Cache-Control 比 Expires 有更高的优先级。
If-None-Match(ETag)比 If-Modified-Since(Last-Modified)有更高的优先级。

-EOF-

《Dive Into Python 3》中文版

Mark Pilgrim的《Dive Into Python》的升级版《Dive Into Python 3》针对 Python 3 进行了更新。现在这本书已经有了中文版,由啄木鸟社区翻译。

在线阅读 http://www.woodpecker.org.cn/share/projects/diveintopython3/
中文镜像 http://diveintopython3.com/
英文原版 http://diveintopython3.org/

在此感谢啄木鸟社区对Python中文资料所作出的贡献。
-EOF-