似乎无法避免关于云计算的炒作,但实际过渡到这个新平台需要经过多次讨论......
从理论的角度来看,可以说如下:
云:
管理:
假设以上是正确的; 然而,逻辑位置是"它取决于..."..在应用程序本身.现在出现了一个隐藏的问题:你如何描述你的j2ee应用程序,以确定它是否是云的候选者; 知道它是
什么是配置最好的EC2 AMI
搜索后我发现只有一个bitniami djangostack.有没有人尝试过.还有其他选择吗?
谢谢
在我们拥有它的Windows机器上,可以将MAC地址更改为预先指定的值.但是可以将EC2 Windows机器上的MAC地址设置为预先指定的值吗?
这是问题所在:
我们提供运行Amazon EC2的虚拟实验室/培训/评估环境.客户通常希望在云中运行许可软件(他们拥有!),但许可组件需要固定的MAC地址才能存在.
但是,如果我们调整MAC地址,尤其是在重启或机器快照之后,还不清楚EC2会发生什么.我看到的一个大问题是,如果我们拍摄具有固定MAC的机器的快照,然后启动它的多个副本,那么理论上每个副本将具有相同的MAC地址.显然是一个路由问题.
但是,目前还不清楚会发生什么,或者底层虚拟化堆栈是否只是在每次启动机器时生成随机MAC.
当然,如果你有想法,我很想听听其他解决方法.
我正在研究直接从客户端JavaScript使用一些云存储的可能性.但是,我遇到了两个问题:
安全性 - 体系结构通常基于每个云客户端构建,因此有一个API密钥(例如).这是有问题的,因为我需要每一个安全我的用户.我无法向所有用户提供相同的API密钥.
跨域AJAX.浏览器可以使用HTTP标头来执行跨域请求,但这意味着我必须能够在云端设置它们.但是,我需要的唯一工作就是能够添加自定义HTTP响应头:Access-Control-Allow-Origin:otherdomain.com.
我的场景涉及来自JS客户端的大量简单队列消息,我想我会使用云来摆脱来自我的主要托管服务提供商的这种流量.Windows Azure有这个队列服务部分,它似乎非常接近我需要的,除了我不知道这些问题是否可以解决.
有什么想法吗?在我看来,云服务的JavaScript客户端在不久的将来是不可避免的场景.
那么,是否有一些带有REST API的云存储可以管理客户端的身份验证,而不会为其提供API密钥?
我想在云中运行一个庞大的节点集群(AWS,Heroku,或者可能是自我管理的VMS),其时钟必须与预定义的容差同步.我正在寻找可能200毫秒的容差.这意味着如果我有250个节点,250个节点中任何一个节点之间的最大时钟差异不应超过200毫秒.我真的不关心世界的实际日期/时间.解决方案必须是容错的,并且不需要依赖任何一个系统的时钟精度 - 实际上,很可能没有一个时钟会非常准确.
要求足够强大,如果由于任何原因确定时钟同步对于任何特定节点不可靠,我宁愿由于时钟失步而从集群中丢弃节点 - 所以在任何可疑的故障时,我都会喜欢能够执行该节点的某种类型的受控关闭.
我喜欢使用类似NTP的东西,但根据NTP 已知问题twiki:
NTP不是为在虚拟机内部运行而设计的.它需要一个高分辨率的系统时钟,响应时间到时钟中断,并以高精度提供服务.没有已知的虚拟机能够满足这些要求.
虽然然后同样的twiki描述了解决这种情况的各种方法(例如在主机操作系统上运行ntp),但我不相信我能够使用AWS或者horoku来修改环境以符合解决方法.
即使我没有在VM中运行,一位拥有多年运行ntp经验的值得信赖的运营经理告诉我,由于每隔一段时间内本地时钟漂移不良,ntp可以并且会丢失同步(或者说得失时间).它不会经常发生,但确实会发生,并且随着您增加机器,您会增加发生这种情况的机会.AFAIK,检测你的距离需要停止ntpd,运行查询模式命令,然后重新启动它,并且可能需要很长时间才能得到答案.
总结一下 - 我需要一个时钟同步,其主要目标如下:
从描述来看,似乎伯克利算法可能是正确的选择,但是它已经实现了吗?
很高兴有:
我正在开发一个将部署到AWS的套接字服务器,到目前为止,我们已经按照与Erlang in Practice中的示例项目类似的结构设置了基本的OTP应用程序,但我们希望避免使用全局消息路由器,因为这不会很好地扩展.
通过分布式应用程序的OTP设计指南以及" 了解你一些Erlang"中的相应章节(Distribunomicon和分布式OTP),看来内置的分布式应用程序机制适用于已知主机名和IP的内部部署解决方案.群集配置是提前确定的,而在我们预期的设置中,应用程序需要动态地上下扩展,并且节点的IP地址将是随机的.
对不起,这是一个冗长的构建,我的问题是,是否有部署到云的分布式Erlang应用程序的设计指南,需要处理所有动态扩展?
谢谢,
假设您在多实例环境中的ASP.NET MVC中有一个Action,它看起来像这样*:
public void AddLolCat(int userId)
{
var user = _Db.Users.ById(userId);
user.LolCats.Add( new LolCat() );
user.LolCatCount = user.LolCats.Count();
_Db.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
当用户反复按下按钮或刷新时,将发生竞争条件,使得LolCatCount可能与LolCats的数量不相似.
题
解决这些问题的常用方法是什么?您可以在JavaScript中修复客户端,但这可能并不总是可行的.即当页面刷新时发生某些事情,或者因为有人在Fiddler中搞砸了.
*只是为了简洁而展示的一个愚蠢的例子.现实世界的例子要复杂得多.
问题
你好!我在Cloud Haskell中编写了一个简单的Server-Worker程序.问题是,当我尝试创建时ManagedProcess,在服务器发送步骤之后,我的示例即使在使用时也会永久挂起callTimeout(在100毫秒后应该会中断).代码很简单,但我发现它没有任何问题.
我也在邮件列表上发布了这个问题,但就我所知的SO社区而言,我在这里可以更快地得到答案.如果我从邮件列表中得到答案,我也会在这里发帖.
源代码
的Worker.hs:
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TemplateHaskell #-}
module Main where
import Network.Transport (EndPointAddress(EndPointAddress))
import Control.Distributed.Process hiding (call)
import Control.Distributed.Process.Platform hiding (__remoteTable)
import Control.Distributed.Process.Platform.Async
import Control.Distributed.Process.Platform.ManagedProcess
import Control.Distributed.Process.Platform.Time
import Control.Distributed.Process.Platform.Timer (sleep)
import Control.Distributed.Process.Closure (mkClosure, remotable)
import Network.Transport.TCP (createTransport, defaultTCPParameters)
import Control.Distributed.Process.Node hiding (call)
import Control.Concurrent (threadDelay)
import GHC.Generics (Generic)
import Data.Binary (Binary)
import Data.Typeable (Typeable)
import Data.ByteString.Char8 (pack)
import System.Environment …Run Code Online (Sandbox Code Playgroud) 我正在开发一个具有相当复杂架构的Python/MySQL云应用程序.操作此系统(当前)生成临时文件(纯文本,YAML)和日志文件,我打算将它们存储在文件系统上.
但是,我们的预期云运营商仅为应用程序提供临时的非持久性文件系统.这意味着存储临时文件和日志文件的初始方法将不起作用.
必须有一个标准的方法来解决这个我不知道的问题.我不想像S3那样使用对象存储,因为它会扩展当前的堆栈并增加复杂性.但我可以在具有相同提供程序的其他服务器上安装其他专用应用程序(如果有任何用于此目的的内容).唯一的限制是它必须是PHP,Python,MySQL.
一般性问题:当没有可用的永久文件系统时,存储文件的标准方法是什么?
对于我的具体案例:是否有任何使用Python和/或MySQL的解决方案,它实现简单快捷?这是Redis的用例吗?
我一直在研究Amazon Lightsail,但有一件事我无法找到任何信息.
实例是否自动管理和更新?特别是,我想到OS/Web服务器安全更新.
使用EC2,我必须不时登录以执行操作系统升级,更新和安装安全补丁.这对于EC2来说很好,但我现在正在设置一个VPS,我基本上可以安装和忘记,至少在系统方面.
如果这是在错误的网站上,请道歉,但毕竟这里有一个amazon-lightsail标签.