分布式tensorflow搭建实践


工业中面临的常常是庞大的数据计算量,采用单一的tensorflow不能完全解决问题,需要结合hadoop,kafka,GPU,C++ 来进行加速和搭建系统。官方的whl安装包不能满足系统要求,通过源码编译安装来加快运行速度。

在此前请先搭建hadoop环境,安装bazel,我的环境 Ubuntu18.04,python3,hadoop2.7

一. 编译本地tensorflow安装包

1.clone tensorflow源代码到本地

2.进入 tensorflow目录下目录下 执行 ./configure


响应式图片srcset属性学习笔记


介绍

以下参考了MDN,并添加了一些细节和自己的测试结论

<img/>的属性,设置srcset之后不同屏幕密度加载不同图片。

其值为:以逗号分隔的一个或多个字符串列表表明不同User Agent可能设置的图像资源。

每一个字符串由以下组成:

  1. 一个图像的 URL
  2. 可选的描述符,空格后跟以下的其一:
    • 一个宽度(w)描述符,这是一个正整数,后面紧跟 'w' 符号。该整数宽度=sizes属性给出的资源(source)大小*像素密度。该值需配合sizes使用。
    • 一个像素密度描述符,这是一个正浮点数,后面紧跟 'x' 符号。该值其实指的就是dpr。若像素密度描述符直接命中的话,就不考虑sizes和w描述符了,但是建议一般所有字符串仅用其中一个 如果没有指定描述符,那它会被指定为默认的 1x。


深度剖析isinstance的检查机制


起步

通过内建方法 isinstance(object, classinfo) 可以判断一个对象是否是某个类的实例。但你是否想过关于鸭子协议的对象是如何进行判断的呢? 比如 list 类的父类是继 object 类的,但通过 isinstance([], typing.Iterable) 返回的却是真,难道 list 是可迭代的子类?学过Python的面向对象应该知道,list的基类是object的。


yahoo前端优化建议-个人总结


内容

1.尽量减少HTTP请求数

  1. 资源合并
  2. 小图片base64编码
  3. 多图合并为单图
  4. CSS Sprites,通过background-image和background-position属性来定位要显示的部分

2. 减少DNS查找

组件分散到2-4个主机名,这是同时减少DNS查找和允许高并发下载的折中方案

3. 避免重定向

HTTP 重定向是一项用于将客户端重定向到设备专用网址的常用技术。

但采用重定向会增加延迟。

若必须重定向的话,请使用HTTP重定向(响应体为空)并用301(永久转移)或302(暂时转移)状态码。(两者区别在于302会被url拦截,具体百度

因为系统会根据 HTTP 请求标头中的用户代理来执行重定向。 例子:

HTTP/1.1 301 Moved Permanently
Location: http://example.com/newuri
Content-Type: text/html

若难以实现HTTP重定向,则用js再去做。该做法多了文档下载,js解析的过程。

注意1:有一种常见的极其浪费资源的重定向,就是URL尾部缺少一个斜线的时候。

例如,跳转到http://astrology.yahoo.com/astrology会返回一个重定向到http://astrology.yahoo.com/astrology/的301响应(注意添在尾部的斜线)。

在Apache中可以用Alias,mod_rewrite或者DirectorySlash指令来取消不必要的重定向。

注意2:进行双向重定向与单向重定向

将访问桌面版网页的移动用户重定向到对应的移动版网页 -- “单向”重定向

在移动用户以及桌面设备用户分别访问桌面版网站和移动网站上的网页时,对他们进行重定向 --“双向”重定向

https://developers.google.com/search/mobile-sites/mobile-seo/separate-urls#automatic-redirection


《Linux内核完全剖析》读书笔记(一):前言


起步

在读过Linux之父林纳斯自传的 《只是为了好玩》 ,他花半年时间完成 linux0.01 版本,那时候代码量只有 1 万行,而到 1.0 版本时候也才有 17 万行。这就让我萌生出阅读 linux 源码的兴趣了。

网上找了三本关于 linux 的设计和分析的书。其中我决定先阅读 《Linux内核完全注释》。这本书基于 0.12 的内核版本,代码量不算多,而且书中几乎所有代码都进行注解,是一本了解 linux 操作系统内核的入门读物。