iN自己就是做IT的,每年工作的时间也就只有几周,天津人嘛不思进取小富则安。用几周的时间赚够一年的用度也就相当满足了。剩下的时间网上吹吹水,出去遛遛弯和朋友聚聚,也就能打发掉一年里剩下的时间。
主要的工作内容也很简单,就是咨询。帮助一些企业看到和规划一下各种管理系统上的问题点。简单的说就是一些企业用户的外脑。
今天为啥开始说这个事情呢?主要是看到这条回复:
所以就可以和大家聊聊IT的段子了。
做信息技术(Information Technology,IT)相关的工作在iN看来是一项“是个人,只要有脑子”就能做好的事情,并不存在什么高深的技术。自谦一点点的说法就是——干IT还不如说相声或者摊煎饼果子技术含量高呢。
信息技术是一个很大的范畴,但归纳起来就是两种:
一种是硬科技甚至是黑科技这是需要绝对的学识和创造力的事情。但是搞IT的人很多真正的硬科技几乎十年一遇,而到了黑科技的领域上则是几乎百年一遇甚至可以可以达到一秒封神的地步。
例如“快速平方根倒数算法”,这个算法只用区区四行代码就可以改变人类的世界观:
float Q_rsqrt( float number ){long i;float x2, y;const float threehalfs = 1.5F;x2 = number * 0.5F;y = number;i = * ( long * ) &y; // evil floating point bit level hacking(邪恶的浮点数位运算黑科技)i = 0x5f3759df - ( i >> 1 ); // what the fuck?(这是什么鬼?)y = * ( float * ) &i;y = y * ( threehalfs - ( x2 * y * y ) ); // 1st iteration (第一次迭代)// y = y * ( threehalfs - ( x2 * y * y ) ); // 2nd iteration, this can be removed(第二次迭代,可以删除)return y;}
其中用到的十六进制数“0x5f3759df”,可以上升到突破人类认知的黑魔法领域,有兴趣的人大家可以自己去查查相关资料,能看懂的必然会被震惊到。
第二种就是“知道”,IT本身就是“知道经济”。用自己“知道”的东西去换取客户价值。就是这么简单的一件事,而且放眼各行各业,IT玩“知道经济”没有任何一个行业可以出其右。
原因就在于构筑一个大多数人的“不知道”的商业环境,是有利于IT行业榨干客户钱包的。
回到咱们前面的留言“池的概念里,有 ssd 缓存的机制吗,可以讲一讲这个嘛”。
有吗???
能有吗???
真有吗???
即便是很多普通用户利用各种渠道拿到了Windows Server这样的操作系统,按照前面的文章建立起来了存储池。却会发现自己心心念念的SSD缓存根本没法设置。
这是很多人觉得Windows Server做NAS性能不够的一个原因——现代的NAS或者存储服务连一个缓存也没有,Windows Server简直弱爆了……
从表象上来说,这种事情的答案普通用户要是能自己解决,那么我们这些做IT咨询和IT实施的人早晚会没饭吃的!
但从本质上来说,八百万分之一的使用量上的东西上的技术细节也完全没有必要让普通用户了解,交给实施人员解决就可以为用户提供价值了。
很多功能是IT公司刻意地做得复杂的。这些功能绝大多数普通用户根本无法接触到,即便是专业设备终其生命周期也只会使用一次,也就没有必要做得特别人性化,从逻辑上能跑通就行。而这种现象就让各种IT培训、实施服务,维护服务有了更大的市场和利润。
20年前的一个网络实施工程师只要拿到一张CCIE证书基本上月入三五、万没什么问题。他日常在设备上干的工作,其实除了几个数值不一样之外,大部分情况下都是套子活。你说CCIE是有技术?只能说对一半,更合理的解释是他找到了合适的机缘知道了IT技术中的一些事情。
Windows Server当然是有SSD的存储池缓存机制的,只不过,这个机制的实现并不在图形界面中,而是需要在命令行中输入一系列的命令实现。
你们这群被用户界面(GUI)惯坏的家伙先别急着喷,用命令行进行系统设置虽然麻烦,但是这是行业惯例,不仅仅Windows Server如此,大多数Linux、BSD也是一样的。
在使用软件的层面来看,
当你只会用GUI,你就是普通人;
当你会用命令行,你就是神仙,可以俯瞰众生;
当你会写程序,你就是造物主,可以说“要有光”,于是就能有光。
Windows系统中包含了PowerShell功能,会把大量有用而不常用的系统功能以脚本命令的形式提供给管理员使用。这些功能提供了比GUI界面更低层次的操作途径和信息显示功能。
例如当我们在图形界面资源管理器中去看电脑上的驱动器,这时候只有一个C盘。
但是如果我们进入了服务器管理器去看的话:
你会发现一个存储池和四块硬盘。利用服务器管理器去看系统你就有了和普通用户不同的感知。你会发现有一个存储池的存在(这是上篇文章设置的)。
但当你进入到PowerShell中输入命令Get-storagepool后:
你会发现系统里面实际上是存在两个存储池的。一个是之前我们创建的存储池,另一个则是Primordial池。
Primordial(原始的),在Windows Server中叫做原始池。任何接入到Windows Server主机的物理硬盘如果不被分配到一个自定义的存储池的话,都会被自动的分配到这个在界面上看似透明的原始池中。
所以……大家可以理解iN看到这样的回复的感觉吧?
系统没告诉您windows私自的、偷偷的给磁盘套了一层“原始池”,您就觉得把磁盘加入到一个自己定义的存储池里面会影响性能?
讲真,这件事,您的左边口袋里面有100块钱,拿出来放到右边口袋里面后,您就只有90块钱了?这种事情,鬼都不信吧?
在Windows Server的存储池中启用SSD缓存的命令很简单
第一步 导入存储总线缓存的模块:输入命令 Import-Module StorageBusCache
这是一个保险步骤,为的是确保存储总线的缓存存在。一般的情况下输入命令后不会有任何提示。
紧接着,我们就可以查看存储总线的缓存状况了,命令:Get-StorageBusCache
现在可以看到存储缓存的默认基本设置情况其中允许项(Enabled)为 False。也就是默认状态下SSD缓存没有开启。
再去查看一下物理磁盘有哪些,命令“Get-PhysicalDisk”
这时候我们可以看到存储池内是包括一个SSD硬盘的。
这个硬盘现在没有进行任何分区,也就没有任何数据的占用。如果在磁盘管理器中去看,上面的空余空间会被标记“存储空间占用”
这块区域是上次文章中我们加入到存储池的半块SSD硬盘。
一切就绪,我们只需要再输入命令:"Enable-StorageBusCahe",这时候就可以开启存储池的缓存。
我们再通过Get-StorageBusCache去观察系统内容,就会发现之前Enable项目的False被改变为True
这时候,回顾前一篇文章,文章中提到的在存储池中创建虚拟磁盘的过程中,当时创建存储层的选项是灰色不可选的。
而现在,再进入相同的界面后存储层的选项就已经被开启了。
Windows Server可以在存储池内智能的区别不同介质访问速度,将更快的SSD和传统的机械硬盘分为两个存储层。
在进入磁盘大小设置的时候你就会发现系统内的SSD和机械硬盘被捆绑在一起,分为了更快层和标准层。
更快层就是一块利用SSD做写缓存(也可再用使用命令开启读缓存)——“更快层”,用机械硬盘做数据存储的标准层。
所以到此,粉丝的疑问“池的概念里,有 ssd 缓存的机制吗,可以讲一讲这个嘛”应该就有一个圆满的答案了——能!
但我们回到这件事的整个认知过程,我们会发现在Windows Server上实现SSD缓存似乎要比群晖这类的系统要麻烦得多——为什么会这样?说得直白一些,这就是一个发财的机会,很多系统功能被隐藏在各种设置项目和命令中,如果一个用户并不知道这些设置和命令往往就很难发挥出自己系统的极限价值。在这种情况下就有了用户不断的市场需求,部署、实施这样的软件项目就可以产生一个巨大的利益链条,从许可证的售卖、系统工程师的培训、系统部署设置都可以成为一门生意。这门生意可比软件公司在GUI界面中直接暴露出功能要能赚更多的钱。
实际上也不能说微软在Windows Server上的这种做法不对,大量的开源软件商业化的进程也是依靠各种秘而不宣的功能和设置来实现效率的最大化的。要没有这些利益的支撑,各种软件的零售费用就都会到天文数字,否则大家就只能用“爱发电了”。
所以——在IT圈,知道就是价值。而且是核心价值!