Xbox

Feel the power

6月11日凌晨4点,闹钟响起。我顶着浓重困意,挣脱床的巨大吸力,来到电脑前,打开YouTube的Xbox官方账号。看完发布会,睡完回笼觉后,我在京东下单了一台Xbox One X。其实天蝎座这台主机,在它发布的时候我就想买了。但是一直以来都比较纠结,因为我的台式机配置还行,可以满足大部分的游戏要求,而它3999的价格比其他主机高出一截。这次的E3展前发布会有很多大作,充值了一波信仰,又看到群里朋友贴出了京东打折的消息,就跟他一起下了单。简单开箱京东的速度真的不错,一大早下单,下午就送来了。但是包装实在过于简陋,居然只是原包装封了一圈保鲜膜……京东的包装……而机器本身的设计比初代Xbox One好看得多,小巧,低调,简洁,内敛,

  • Dante Wang
    Dante Wang
4 min read

这届E3厉害了

这届E3很厉害,各大厂商的发布会新品不断,还都是短期(今年和明年)能玩到的。简单总结下关注的作品:赛博朋克2077 打造出巫师三部曲,其中巫师3本体和资料片两次获得年度游戏的波兰蠢驴,终于在微软展前发布会的结尾发布了赛博朋克2077的第一个真正意义上的预告片。一句话,shut up and take my money!坐等Xbox Store预购。 Shadow of the Tomb Raider 古墓丽影系列重启三部曲的第三部,超人劳拉继续她一人灭一个军队的冒险故事。前两作都通关并且拿到了全收集,这一部肯定不会错过——已经在Xbox Store预购了克劳馥版。 全境封锁2 游戏的一代虽然已经被我删掉了,但是定格在419小时的游戏时间仍然是我Steam游戏库里的第一。

  • Dante Wang
    Dante Wang
2 min read
GuangZhou

广州行

去年深圳Ingress Mission Day之后,去广州做一个下午的任务,而任务所在地花城广场给我留下了很深的印象,心里一直想着再去一次。这次终于下定决心,在十一假期之后再次前往广州。 十月的广州,夏天仍旧没有任何要离去的意思。飞机还有一小时落地时,机舱广播说地面温度30度;而飞机落地后,太阳也落山了的时候,地面温度反而升到了33度。好在传说中的“降温”还是来了,在广州的第三天,最高气温降到了30度以下,而晚上竟能让人感觉到一丝清凉。 由于我对这座城市的好感完全来自于花城广场,这次我就直接选择住在花城广场旁边的……广州柏悦酒店。柏悦酒店是凯越集团旗下的高端酒店品牌,以低调奢华的风格著称。就连酒店大门,也隐藏在大楼脚下并不靠主路的一侧,低调得让我差点没有找到入口。 酒店的入住体验非常棒,全程遇到的每一个工作人员都很热情,会主动帮忙开门,按电梯或是搬运行李箱。

  • Dante Wang
    Dante Wang
7 min read
java

用IntelliJ和Gradle体验JDK9的新HTTP客户端模块

多年来,JDK内置的HTTP客户端,也就是HttpURLConnection,从没有得到过更新,已经非常老旧,只支持HTTP/1.1、不支持NIO不说,用起来也很麻烦。所以,很多人会使用第三方的HTTP客户端库,比如Apache HttpClient,或是基于Netty的Async Http Client。为了跟上时代,JDK9新增了jdk.incubator.httpclient模块,提供了一个支持HTTP2,WebSocket和Async的HTTP客户端。下载JDK9之后,我第一时间体验了这个新客户端,在这里简单介绍一下,并且记录一下遇到的一些坑。 // 建立Gradle工程 首先,在IntelliJ的向导中创建一个工程。当然了,不是IntelliJ IDEA工程。

  • Dante Wang
    Dante Wang
4 min read
surface

Surface Pro (2017) 使用感受

5月23日,微软在上海水舍酒店举办发布会,发布了新一代的Surface Pro (2017)系列。看完发布会直播的第二天,我看着微软商城的预售页面,没有忍住,分期了一台。可惜的是,这一代的Surface Pro并不自带触控笔,而同时发布的4096级压感的新款触控笔,一直跳票到9月1日才在国内发售。也就是说,直到最近,我才有机会好好体验一下Surface Pro的核心功能。 我的这台Surface Pro是i5-8G-256G的型号。选择这个型号,一方面是价格在可以接受的范围内,另一方面则是因为微软大胆地在i5机型上使用了无风扇设计。相比于可能出现的发热,我更不希望这样一台设备拿在手里的时候发出噪音。实际上,在i5机型上取消风扇并不算非常激进。在这两个多月中,除了Android Studio中的模拟器玩手游,和一款使用到GPU加速的水墨画软件之外,机器并没有发烫过。

  • Dante Wang
    Dante Wang
5 min read
linux

Windows 10:可能是最好的Linux发行版?

有时候需要用Linux,但是只有一台电脑,又嫌双系统太麻烦,虚拟机太重?Windows 10可能是最好的“Linux发行版”。 得益于微软对“兼容”这件事的痴迷,Windows 10有了在系统内“运行一个Ubuntu”的能力。在最新的Creator Update中,这个Ubuntu的版本是16.04,虽然并不是最新,但也足够大部分人使用。而且,尽管Windows 10只是提供了一个“Bash on Ubuntu”,也就是命令行,但是通过一点小手段,就可以很轻松地运行起来一个桌面环境。 这篇文章介绍了如何在Windows 10中安装Xfce4桌面环境。说实话,这个过程比我想象中要简单多。

  • Dante Wang
    Dante Wang
3 min read

关于开发培训班的吐槽

记得几年前,我还在大学的时候,有软件开发界大佬写博客直言不会招培训班学员,看到是某培训机构培训出来的人,连面试机会都不会给;而那个培训机构也不甘示弱,写文反驳,一时间刀光剑影,争议不断。 最近所在的部门在招人,一个Java Web开发培训机构推荐来10余个学员。一番笔试面试之后,我似乎能理解当年的大佬为何会说出那样政治不正确的话了。 首先是笔试。 我们的笔试题难么?其实不算难。两道编程题,几道基础知识题而已。比如: Write a function that takes a string as input and returns the string

  • Dante Wang
    Dante Wang
2 min read
Games

2016年的游戏之旅

想要认真写博客的时候,写什么就成了一个难题。熊壕说,折腾主题比写文章有趣多了。但是,我是前端苦手,却又不愿直接搬人家的主题来用,所以还是写博客好了。写什么呢,就写写2016年玩的那些游戏吧。 古墓丽影崛起 在我的Steam客户端里,游戏是在2016年1月6日安装的,所以就从它开始。重启后的劳拉保持着攀岩手不酸,跳坑腿不软,冰天雪地说下水就下水的超人体格,还点了快速学外语的技能点,一个人杀得神秘组织人仰马翻。吐槽归吐槽,这样的设计其实情有可原,既让人玩起来比较爽快,又丰富了游戏的收集要素。简单说,这是一部整体素质与前作不相上下的作品。 全境封锁 在游戏发布之前,我虽然一直对它有所期待,但这主要是因为题材(以及汤姆克兰西的名头),对游戏全程联网的设定还是很有顾虑的。这种顾虑并不是没有道理,游戏解锁的第一天,

  • Dante Wang
    Dante Wang
6 min read
link aggregation

链路聚合折腾记

哪些因素会影响一个服务器上运行着的Web Application的性能?前端程序员,后端程序员,服务器运维人员可能会给出不同的答案。 我最近就遇到了与局域网带宽有关的性能问题。一个Web App,在经过代码层面的性能优化后,在一台配置较老的服务器上观察到了每秒处理请求数的显著提升,而在配置高得多的服务器上,却没有观察到变化。由于高配置服务器的每秒请求处理数量本身就远高于低配置的服务器,我下意识地运行了一下ifstat。果然!在高配置的服务器上,网络端口em1的出站数据高达120000KB/s,看上去已经跑到了千兆以太网的极限。 由于没有万兆设备,一根GbE网线解决不了的事情,就只能靠多根来解决了。幸好服务器上的千兆网卡有4个端口,去掉一个另有他用的端口,仍有三个可以用来做链路聚合。于是我开始搜索资料和教程,尝试配置链路聚合,没想到这一下子就折腾了两三天。 我首先搜索的,就是如何在服务器用的CentOS上配置链路聚合。kernel.org的文档说,Linux提供这样几种链路聚合模式:

  • Dante Wang
    Dante Wang
4 min read
ghost

Ghost 搬家记录——这次是 Ubuntu

最近从Linode跳到了RamNode,新的服务器上安装了最新的Ubuntu 16.04,在给Ghost搬家的过程中遇到了很多问题,再来记录一下。 关于node.js Ghost现在已经支持node 4 LTS系列,而node.js的官网也提供有4的apt repo,所以直接按照提示运行命令就可以搞定。 关于systemd 我一开始将前文中贴出的systemd示例直接复制到了新服务器上,但是无论如何也无法启动Ghost。首先,systemd说PrivateNetworks这个属性未知;其次,在原先的示例里,npm的路径是/usr/local/bin/npm,而新系统上应该是/usr/bin/npm——我花了20分钟来研究为何直接运行npm start就可以,

  • Dante Wang
    Dante Wang
1 min read
systemd

从MySQL服务日志里的一个警告说起

随着越来越多的Linux发行版开始使用systemd,不论是发行版软件源还是MySQL官方源,其中的MySQL软件包都开始支持systemd(提供systemd的service定义)。但是由于systemd带来的巨大改变,以前所使用的很多配置方式都有可能失效,而要想达到同样的效果,需要采取新的手段。 [Warning] Changed limits: max_open_files: 5000 (requested 5106) ... 这段警告信息是在最新的CentOS 7上面,安装MySQL 5.7.9并应用了旧的my.cnf之后出现的。可以看到,MySQL服务在启动的时候,根据配置文件中的配置,向系统请求将5106作为max_open_files的值;但是,因为某些原因,这个请求并没有成功,

  • Dante Wang
    Dante Wang
2 min read
ghost

Ghost 部署记录:Fedora Server 22

手里的Linode只用来当梯子似乎有点浪费,那就部署一个Ghost来玩玩吧。但是,这个东西坑也蛮多的,部署中踩到好几个,在这里记录一下。 安装node.js 安装Ghost并用systemd来保持其运行 安装Nginx并设置反向代理 用Cloudflare来提供CDN 设置防火墙来防止直接访问服务器 安装node.js node的最新版本已经到5.0了,但是Ghost网站和Github上的Changelog说它还不支持4.0;官方的教程里推荐0.10和0.12,但我用0.10.40执行npm install的时候出错了,而0.12.7就没问题。 Fedora Server 22的源里还是0.10,所以下载tar包安装。

  • Dante Wang
    Dante Wang
4 min read