自托管有哪些优缺点?

时间:2022-02-09 20:34:09

What are the advantages and disadvantages of self-hosting something like a svn repository? All links and ideas are appreciated.

自托管像svn存储库这样的优点和缺点是什么?所有链接和想法都表示赞赏。

Off the top of my head:

脱离我的头顶:

Advantages of Self-hosting

自托管的优点

  • Flexibility. On my own machine I can install whatever I want. If I would like to use a vcs like Bazaar and use Loggerhead instead of Trac, then right now there isn't really much choice beyond Launchpad, which has its warts
  • 灵活性。在我自己的机器上,我可以安装我想要的任何东西如果我想使用像Bazaar这样的vcs并使用Loggerhead代替Trac,那么现在除了Launchpad之外没有太多的选择,它有它的疣

  • Save money. Costs add up over time especially for large teams
  • 存钱。随着时间的推移,成本会随着时间的推移而增加

  • The free plans offered by sites like Assembla are not private. Anybody can have access to your code
  • 像Assembla这样的网站提供的免费计划不是私密的。任何人都可以访问您的代码

Advantages of Paid hosting (ie: GitHub, Assembla, Google Code)

付费托管的优势(即:GitHub,Assembla,Google Code)

  • Robustness. You don't need to worry about your server catching fire because it's become somebody else's problem.
  • 鲁棒性。您不必担心服务器着火,因为它会成为别人的问题。

  • Less hassle. Don't need to be do all the system administration and tweaking of conf files. Instead you can just focus on the coding
  • 减少麻烦。不需要进行所有系统管理和调整conf文件。相反,你可以专注于编码

7 个解决方案

#1


For production you should only use self hosting if you are professional sys admin. Can you answer yes to following questions (a bit linux oriented, but you should get an idea):

对于生产,如果您是专业的系统管理员,您应该只使用自托管。你能否回答以下问题(有点面向Linux,但你应该知道):

  • Can you react to system failure in minutes (I mean you need sleep at least. Do you have somebody to look after system while you are asleep?)
  • 你能在几分钟内对系统故障作出反应(我的意思是你至少需要睡觉。你在睡觉的时候有人照顾系统吗?)

  • Can you spot a system break?
  • 你能发现系统中断吗?

  • Can you remove exploits from your system?
  • 你能从你的系统中删除漏洞利用吗?

  • Can you recompile kernel. If you can't remove exploits?
  • 你能重新编译内核吗?如果你无法删除漏洞利用?

  • Can you configure the system for optimal performance?
  • 您可以配置系统以获得最佳性能吗?

  • Are you willing to pay for UPS, backup storage and alternative internet provider?
  • 您是否愿意为UPS,备份存储和替代互联网提供商付费?

If you can answer yes to these questions benefits are very atractive and I would go with it.

如果你对这些问题的答案是肯定的,那么好处就非常有吸引力,我会继续使用它。

On the other hand hosting development environment can be managed by administrator of any level especially when there are such easy to use servers like Ubuntu.

另一方面,托管开发环境可以由任何级别的管理员管理,尤其是当有像Ubuntu这样的易于使用的服务器时。

#2


You specifically asked about hosting a subversion repository, so the first disadvantage that comes to mind is data protection. I personally would never trust a third-party with my source code, except for open source code or code of an unimportant side project. Source code is a very important asset for a ISV, so trusting a third-party to protect your source code doesn't sound like a good idea.

您特别询问了托管subversion存储库的问题,因此首先想到的缺点是数据保护。我个人永远不会信任第三方的源代码,除了开源代码或不重要的副项目的代码。源代码是ISV非常重要的资产,因此信任第三方来保护您的源代码并不是一个好主意。

And even if it's not about source code, outsourcing other critical parts of you business such as email, accounting/invoicing* is just asking for trouble. And it's not like you don't have to care about backups anymore when you outsource your data hosting. You still should backup your data, in case the hosting company screws up.

即使它不是关于源代码,外包业务的其他关键部分,如电子邮件,会计/发票*只是在寻找麻烦。当你外包数据托管时,你不再需要关心备份了。如果托管公司搞砸了,你仍然应该备份你的数据。

*) With outsourcing accounting/invoicing I mean all those new hosted invoicing apps, not getting help from an accountant of course

*)外包会计/发票我是指所有那些新的托管发票应用程序,当然没有得到会计师的帮助

#3


I find the web interface of external hosts to be hassles. Plus you can have however much space you want on your machine. Like you said, the maintenance can be a burden for self hosting though.

我发现外部主机的Web界面很麻烦。另外,您可以在机器上拥有所需的空间。就像你说的那样,维护可能会成为自我托管的负担。

#4


How big is your project? If it is not too big just get an account at http://www.beanstalkapp.com That is what I did. I do not have to worry about any setups and can focus on the actual development. If your situation is more complex self-hosting is worth considering. But keep in mind that you would have to take of backups too and that an update of the server screw a lot of things up.

你的项目有多大?如果它不是太大,只需在http://www.beanstalkapp.com上获得一个帐户。这就是我所做的。我不必担心任何设置,可以专注于实际开发。如果您的情况更复杂,自托管是值得考虑的。但请记住,您也必须采取备份,并且服务器的更新会搞砸很多事情。

#5


This ties into the server catching fire, but one key advantage of external hosting is that it's (presumably) backed up automatically. Doing your own backups is a hassle, and ends up being less reliable than what you'd get from Google.

这与服务器着火有关,但外部托管的一个关键优势是它(可能)自动备份。做自己的备份很麻烦,最终不如你从谷歌那里得到的那么可靠。

#6


With self-hosting there comes great responsibility.

有了自我托管,就会有很大的责任感。

  • you have to backup everything
  • 你必须备份一切

  • you need spareparts for your hardware
  • 你的硬件需要备件

  • if you have stuff that is important you need redundant hardware
  • 如果你有重要的东西,你需要冗余的硬件

  • you don't have real holidays. if something breaks you have to fix it
  • 你没有真正的假期。如果出现问题,你必须修理它

#7


In addition to what others have already mentioned, there are also benefits specific to using cloud services by companies like Amazon, Yahoo, Google, Microsoft, etc. Despite what some might claim, self-hosting is not inherently "safer." In most cases, it's quite the opposite actually. This is because most small-to-medium-sized companies do not have the resources to provide the level of reliability and redundancy that mega-corporations like Microsoft or Amazon can. Unless you are hosting source code for a top-secret defense project or other projects where the threat of espionage is very real, the greatest threats to your code and your business are more mundane things like server/network downtime.

除了其他人已经提到的内容之外,还有亚马逊,雅虎,谷歌,微软等公司使用云服务的特定优势。尽管有些人可能声称,自托管本身并不“更安全”。在大多数情况下,实际上恰恰相反。这是因为大多数中小型公司没有足够的资源来提供像微软或亚马逊这样的大公司可以提供的可靠性和冗余水平。除非您为绝密防御项目或其他间谍威胁非常真实的项目托管源代码,否则对您的代码和业务造成的最大威胁是服务器/网络停机等更为平凡的事情。

  • Redundancy: Cloud services provide levels of redundancy that most businesses simply cannot obtain on their own. This includes data redundancy (back-ups/RAID), hardware redundancy (components/equipment), and geographical redundancy (multiple server locations across the globe). If a natural disaster hits your city, is your data going to be safe?
  • 冗余:云服务提供了大多数企业无法自行获取的冗余级别。这包括数据冗余(备份/ RAID),硬件冗余(组件/设备)和地理冗余(全球多个服务器位置)。如果自然灾害袭击您的城市,您的数据是否安全?

  • Multi-tenancy: Each small business by itself cannot afford 24/7 support staff and multi-million dollar equipment. But pooling their resources together through a Cloud service affords them (through centralization and better resource utilization/higher efficiency) access to a much higher level of service.
  • 多租户:每个小型企业本身都无法负担全天候支持人员和价值数百万美元的设备。但是,通过云服务将他们的资源集中在一起,可以(通过集中化和更好的资源利用/更高的效率)访问更高级别的服务。

  • Security: Related to multi-tenancy, by centralizing the data of thousands of businesses, this allows security resources to be much more tightly focused.
  • 安全性:与多租户相关,通过集中数千个企业的数据,这可以使安全资源更加集中。

Lastly, it should be noted that most commercial hosting providers offer co-location and dedicated hosting. And even cloud service providers allow customers to configure their "server" however they want, and installing/running whatever applications on it they want. So you can have a great deal more freedom than that offered by $10/month web hosting.

最后,应该指出的是,大多数商业托管服务提供商提供共址和专用托管。甚至云服务提供商也允许客户根据需要配置他们的“服务器”,并安装/运行他们想要的任何应用程序。因此,您可以获得比每月10美元的虚拟主机提供的更多*。

#1


For production you should only use self hosting if you are professional sys admin. Can you answer yes to following questions (a bit linux oriented, but you should get an idea):

对于生产,如果您是专业的系统管理员,您应该只使用自托管。你能否回答以下问题(有点面向Linux,但你应该知道):

  • Can you react to system failure in minutes (I mean you need sleep at least. Do you have somebody to look after system while you are asleep?)
  • 你能在几分钟内对系统故障作出反应(我的意思是你至少需要睡觉。你在睡觉的时候有人照顾系统吗?)

  • Can you spot a system break?
  • 你能发现系统中断吗?

  • Can you remove exploits from your system?
  • 你能从你的系统中删除漏洞利用吗?

  • Can you recompile kernel. If you can't remove exploits?
  • 你能重新编译内核吗?如果你无法删除漏洞利用?

  • Can you configure the system for optimal performance?
  • 您可以配置系统以获得最佳性能吗?

  • Are you willing to pay for UPS, backup storage and alternative internet provider?
  • 您是否愿意为UPS,备份存储和替代互联网提供商付费?

If you can answer yes to these questions benefits are very atractive and I would go with it.

如果你对这些问题的答案是肯定的,那么好处就非常有吸引力,我会继续使用它。

On the other hand hosting development environment can be managed by administrator of any level especially when there are such easy to use servers like Ubuntu.

另一方面,托管开发环境可以由任何级别的管理员管理,尤其是当有像Ubuntu这样的易于使用的服务器时。

#2


You specifically asked about hosting a subversion repository, so the first disadvantage that comes to mind is data protection. I personally would never trust a third-party with my source code, except for open source code or code of an unimportant side project. Source code is a very important asset for a ISV, so trusting a third-party to protect your source code doesn't sound like a good idea.

您特别询问了托管subversion存储库的问题,因此首先想到的缺点是数据保护。我个人永远不会信任第三方的源代码,除了开源代码或不重要的副项目的代码。源代码是ISV非常重要的资产,因此信任第三方来保护您的源代码并不是一个好主意。

And even if it's not about source code, outsourcing other critical parts of you business such as email, accounting/invoicing* is just asking for trouble. And it's not like you don't have to care about backups anymore when you outsource your data hosting. You still should backup your data, in case the hosting company screws up.

即使它不是关于源代码,外包业务的其他关键部分,如电子邮件,会计/发票*只是在寻找麻烦。当你外包数据托管时,你不再需要关心备份了。如果托管公司搞砸了,你仍然应该备份你的数据。

*) With outsourcing accounting/invoicing I mean all those new hosted invoicing apps, not getting help from an accountant of course

*)外包会计/发票我是指所有那些新的托管发票应用程序,当然没有得到会计师的帮助

#3


I find the web interface of external hosts to be hassles. Plus you can have however much space you want on your machine. Like you said, the maintenance can be a burden for self hosting though.

我发现外部主机的Web界面很麻烦。另外,您可以在机器上拥有所需的空间。就像你说的那样,维护可能会成为自我托管的负担。

#4


How big is your project? If it is not too big just get an account at http://www.beanstalkapp.com That is what I did. I do not have to worry about any setups and can focus on the actual development. If your situation is more complex self-hosting is worth considering. But keep in mind that you would have to take of backups too and that an update of the server screw a lot of things up.

你的项目有多大?如果它不是太大,只需在http://www.beanstalkapp.com上获得一个帐户。这就是我所做的。我不必担心任何设置,可以专注于实际开发。如果您的情况更复杂,自托管是值得考虑的。但请记住,您也必须采取备份,并且服务器的更新会搞砸很多事情。

#5


This ties into the server catching fire, but one key advantage of external hosting is that it's (presumably) backed up automatically. Doing your own backups is a hassle, and ends up being less reliable than what you'd get from Google.

这与服务器着火有关,但外部托管的一个关键优势是它(可能)自动备份。做自己的备份很麻烦,最终不如你从谷歌那里得到的那么可靠。

#6


With self-hosting there comes great responsibility.

有了自我托管,就会有很大的责任感。

  • you have to backup everything
  • 你必须备份一切

  • you need spareparts for your hardware
  • 你的硬件需要备件

  • if you have stuff that is important you need redundant hardware
  • 如果你有重要的东西,你需要冗余的硬件

  • you don't have real holidays. if something breaks you have to fix it
  • 你没有真正的假期。如果出现问题,你必须修理它

#7


In addition to what others have already mentioned, there are also benefits specific to using cloud services by companies like Amazon, Yahoo, Google, Microsoft, etc. Despite what some might claim, self-hosting is not inherently "safer." In most cases, it's quite the opposite actually. This is because most small-to-medium-sized companies do not have the resources to provide the level of reliability and redundancy that mega-corporations like Microsoft or Amazon can. Unless you are hosting source code for a top-secret defense project or other projects where the threat of espionage is very real, the greatest threats to your code and your business are more mundane things like server/network downtime.

除了其他人已经提到的内容之外,还有亚马逊,雅虎,谷歌,微软等公司使用云服务的特定优势。尽管有些人可能声称,自托管本身并不“更安全”。在大多数情况下,实际上恰恰相反。这是因为大多数中小型公司没有足够的资源来提供像微软或亚马逊这样的大公司可以提供的可靠性和冗余水平。除非您为绝密防御项目或其他间谍威胁非常真实的项目托管源代码,否则对您的代码和业务造成的最大威胁是服务器/网络停机等更为平凡的事情。

  • Redundancy: Cloud services provide levels of redundancy that most businesses simply cannot obtain on their own. This includes data redundancy (back-ups/RAID), hardware redundancy (components/equipment), and geographical redundancy (multiple server locations across the globe). If a natural disaster hits your city, is your data going to be safe?
  • 冗余:云服务提供了大多数企业无法自行获取的冗余级别。这包括数据冗余(备份/ RAID),硬件冗余(组件/设备)和地理冗余(全球多个服务器位置)。如果自然灾害袭击您的城市,您的数据是否安全?

  • Multi-tenancy: Each small business by itself cannot afford 24/7 support staff and multi-million dollar equipment. But pooling their resources together through a Cloud service affords them (through centralization and better resource utilization/higher efficiency) access to a much higher level of service.
  • 多租户:每个小型企业本身都无法负担全天候支持人员和价值数百万美元的设备。但是,通过云服务将他们的资源集中在一起,可以(通过集中化和更好的资源利用/更高的效率)访问更高级别的服务。

  • Security: Related to multi-tenancy, by centralizing the data of thousands of businesses, this allows security resources to be much more tightly focused.
  • 安全性:与多租户相关,通过集中数千个企业的数据,这可以使安全资源更加集中。

Lastly, it should be noted that most commercial hosting providers offer co-location and dedicated hosting. And even cloud service providers allow customers to configure their "server" however they want, and installing/running whatever applications on it they want. So you can have a great deal more freedom than that offered by $10/month web hosting.

最后,应该指出的是,大多数商业托管服务提供商提供共址和专用托管。甚至云服务提供商也允许客户根据需要配置他们的“服务器”,并安装/运行他们想要的任何应用程序。因此,您可以获得比每月10美元的虚拟主机提供的更多*。