设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 开源热点 查看内容

LUPA开源周刊:谷歌Java侵权案升级Postgres大会回顾

2015-7-25 16:10| 发布者: joejoe0332| 查看: 22486| 评论: 0|原作者: LUPA开源社区|来自: LUPA开源社区

摘要: 这周,甲骨文今日向法院提出申请,希望对之前提起的谷歌侵犯Java知识产权案进行更新,加入Android操作系统当前的市场主导地位。这是甲骨文首次对该案件进行更新,意味着这场已持续5年之久的诉讼案距离结案还为时尚远 ...


  Sven Slootweg (joepie91)是一名黑客,同时也是CrytoCC的创建者,现在提供Node.js代码评审服务。近日,他在个人博客上发表了一篇博文《为什么你应该永远、永远、永远不要再使用MongoDB》。在文中,他列举了如下理由:

  丢失数据(见1、2);默认忽略错误,假设每次写入都是成功的,在32位系统上,这可能会导致数据无声无息地丢失;即使是在MongoDB宣传的适用场景下,其性能依然不高(见3、4);几乎在所有的应用场景下,开发者都会被迫养成使用隐式模式的坏习惯(见4);存在锁问题(见4);对安全问题响应很慢(见5);不符合ACID(见6);扩展和维护困难;JSON存储也不是MongoDB独有的功能,PostgreSQL、CouchDB也支持(见7、8)。


  joepie91认为,MongoDB不仅存在诸多问题,而且并无突出之处。如果项目涉及用户账户或者两条记录之间存在某种关系,那么就应该使用关系型数据库,而不是文档存储;如果项目在使用Mongoose, 那么也应该使用关系型数据库,因为Mongoose只是使用文档存储模拟了有模式的关系型数据库。因此,大多数情况实际上需要的都是一个关系型数据库。在 这些情况下,PostgreSQL是个不错的可选方案。开发者可以使用查询构建器或ORM来简化使用过程,比如,在Node.js中,可以选用Knex、Bookshelf、Sequelize或Waterline。即使真得需要一个文档存储,那么也有比MongoDB更好的选项。 另外,他也不认为MongoDB适合于创建原型,因为如果生产环境使用不同的数据库,则还需要重写所有的代码。总之,MongoDB并没有什么适用场景。 它在技术上比不上其它可选方案,并没有提供真正有用的独有的特性,而且开发人员也无法确保数据一致性和安全。

  最后,joepie91指出,流行度并不等同 于质量,只能说明产品有一个不错的市场团队:永远不要因为“其他人那样做”就使用一个数据库,对于一个特定的数据库,要自己研究它的优点和不足。

  joepie91的观点在Hack News上得到了广泛的赞同。网友karmakaze也认为,有了PostgreSQL 9.4,就没有任何理由要使用MongoDB了(JSONB比BSON更合用),另外还可以使用CouchDB。对于MongoDB的具体限制,网友giaour建议阅读aphyr的系列文章Call Me Maybe,并指出,虽然存在已知的变通方案,但那大大降低了MongoDB的开发体验。更多内容请关注本次专辑的相关内容……

  如果你刚刚开始接触 Linux,我敢说你在决定选择采用何种 Linux 桌面环境上会花上一些时间。你也许会打算把每个桌面都试用一遍,但是那很费时间,而且确实有很多桌面环境可供选择,这就是我发表“最优秀的 Linux 桌面以及他们的优缺点”的目的,本文告诉你在选择桌面时需要注意些什么,让我们开始吧。


  我想从第五个说起,虽然我考虑过直接把第一名告诉你。哈哈,这就是 KDE,也许你并不感兴趣但是 KDE 的开发是从1996年开始的,第一版在 1998 发布。KDE 最易定制的桌面,这意味着你可以定制任何东西。其是在像 QT 这样的现代技术的基础上开发而成。很多流行的 Linux 发布都提供 KDE,例如 Ubuntu,Linux Mint,OpenSUSE,Fedora,kubuntu,PCLinuxOS 和其他。
 
  KDE 是所有桌面环境中最易定制的,如同其他桌面环境一样你需要一些插件,小工具,配置工具来定制你的环境,KDE 把所有这些插件和工具都打包到系统设置里面。有了高级配置管理器,所有用户需求都可以被定制而不需要任何三方工具来美化和配置。

  第二名是 MATE。MATE (西班牙语发音: [ˈmate]) 桌面环境是基于 GNOME 2 已不再维护的代码创建的一个分支。它以南美洲的植物 Yerba mate ①和由药草制成的茶 mate ②命名。使用新名称代替 GNOME, 可避免与 GNOME 3 组件冲突。 MATE 由一个不喜欢 Gnome shell 向现代化桌面环境转变的 Gnome 2 用户创建。

  MATE 给予用户使用旧版桌面环境的感受,但随着时间的推移,界面也有诸多改进。 MATE 对低配置电脑支持的也非常好,如果你有一台旧的或较慢的电脑请使用 MATE。 更多详细内容我们将在本次专辑为大家展示……

  我们可以让容器在不同的操作系统上运行,不同的操作系统都有自己的虚拟化服务,如:Solaris Zones、BSD Jails、Linux Docker(Windows现在也支持Docker了)、Linux OpenVZ等等。那选择哪一个?请看本文带来的分析。


  单单使用容器是不够的,提供商们认为你需要一个容器专用的Linux发行版本。我们可以让容器在不同的操作系统上运行,不同的操作系统都有自己的虚拟化服务,如:Solaris Zones、BSD Jails、 Linux Docker(Windows现在也支持Docker了)、Linux OpenVZ等等。特别是在Docker和容器技术突然流行开来,操 作系统公司正在采取不同的策略。他们认为,大部分容器,应该用瘦操作系统制作。

  为什么?(当然,除了给他们一个新的收入来源)Alex Polvi,CoreOS的CEO,第一个发行了针对轻量级、容器友好的Linux系统的Linux公司,解释道:”我们认为我们可以进一步让容器达到操作系统无关“如何办到?Polvi意识到容器可以将应用程序与操作系统隔离,使宿主操作系统切换不影响应用程序正常运行。为了让容器更有效的运行,你会希望宿主操作系统只提供满足容器运行的最少服务。然后,从谷歌是如何更新Chrome OS中可以借鉴(请注意,CoreOS一开始就是fork自Chrome OS的),Polvi认为容器服务器也可以自动更新,相应的,也会极大提升操作系统打补丁的速度。所以,Polvi继续说道,”如果所有这些都能自动更新,你再也不用担心?CoreOS就像一个有组织的团体,帮你维护操作系统,你只需要关注应用程序的正常运行。


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部