当前位置: 技术问答>linux和unix
有关集群技术
来源: 互联网 发布时间:2015-06-02
本文导语: 我在我们这个论坛很少看到有关集群技术的讨论以及并行算法什么的,,,, 我现在在学MPI+c,,有谁对这个感兴趣的,,我们可以一起学习,进步。 | mosix支持进程迁移。不过实际意义不大,与其把...
我在我们这个论坛很少看到有关集群技术的讨论以及并行算法什么的,,,,
我现在在学MPI+c,,有谁对这个感兴趣的,,我们可以一起学习,进步。
我现在在学MPI+c,,有谁对这个感兴趣的,,我们可以一起学习,进步。
|
mosix支持进程迁移。不过实际意义不大,与其把进程迁移到别的机器上,不如直接交付未完成的计算。
进程迁移可以分为应用层面的迁移和系统层面的迁移。
应用层面应该简单些,不过几乎会变得和pvm差不多,而且是退化的pvm,实质就是使用pvm完成一台机器算一部分的串行计算。
系统层面的几乎没有实现可能,除非对一些特定编写的进程。因为系统不可能掌握进程拥有资源的知识。举个简单例子一个进程id相关的进程决不可能被迁移,不能保证迁移后id不变,然而系统没有办法确定应用是否使用了进程id作为某个关键字。另外,内存之外的系统资源也不能被迁移,例如应用使用了本地文件,迁移后就只能通过nfs引用该文件,即便这点可以做到,也不得不考虑,本地文件系统访问和网络文件系统访问上的语义差异。
一家之言,欢迎讨论。
进程迁移可以分为应用层面的迁移和系统层面的迁移。
应用层面应该简单些,不过几乎会变得和pvm差不多,而且是退化的pvm,实质就是使用pvm完成一台机器算一部分的串行计算。
系统层面的几乎没有实现可能,除非对一些特定编写的进程。因为系统不可能掌握进程拥有资源的知识。举个简单例子一个进程id相关的进程决不可能被迁移,不能保证迁移后id不变,然而系统没有办法确定应用是否使用了进程id作为某个关键字。另外,内存之外的系统资源也不能被迁移,例如应用使用了本地文件,迁移后就只能通过nfs引用该文件,即便这点可以做到,也不得不考虑,本地文件系统访问和网络文件系统访问上的语义差异。
一家之言,欢迎讨论。
|
我现在linux下面用pvm做完了并行遗传算法.大家以后可以讨论一下。另外我还打算做linux下面的进程迁移。哪位有兴趣呀!
|
借用贴主的地盘一用
IPVS调度器的八种负载调度算法中有:
基于局部性的最少链接(Locality-Based Least Connections)
"基于局部性的最少链接" 调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。该算法根据请求的目标IP地址找出该目标IP地址最近使用的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务器不存在,或者该服务器超载且有服务器处于一半的工作负载,则用"最少链接"的原则选出一个可用的服务器,将请求发送到该服务器。
带复制的基于局部性最少链接(Locality-Based Least Connections with Replication)
"带复制的基于局部性最少链接"调度算法也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。它与LBLC算法的不同之处是它要维护从一个目标IP地址到一组服务器的映射,而LBLC算法维护从一个目标IP地址到一台服务器的映射。该算法根据请求的目标IP地址找出该目标IP地址对应的服务器组,按"最小连接"原则从服务器组中选出一台服务器,若服务器没有超载,将请求发送到该服务器,若服务器超载;则按"最小连接"原则从这个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器。同时,当该服务器组有一段时间没有被修改,将最忙的服务器从服务器组中删除,以降低复制的程度。
--------------------------------------------------------------------------
为什么选择的是“最忙的服务器”?为什么不是“最少的”?
我觉得我好象是钻到牛角尖了,谁能点播一下。
IPVS调度器的八种负载调度算法中有:
基于局部性的最少链接(Locality-Based Least Connections)
"基于局部性的最少链接" 调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。该算法根据请求的目标IP地址找出该目标IP地址最近使用的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务器不存在,或者该服务器超载且有服务器处于一半的工作负载,则用"最少链接"的原则选出一个可用的服务器,将请求发送到该服务器。
带复制的基于局部性最少链接(Locality-Based Least Connections with Replication)
"带复制的基于局部性最少链接"调度算法也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。它与LBLC算法的不同之处是它要维护从一个目标IP地址到一组服务器的映射,而LBLC算法维护从一个目标IP地址到一台服务器的映射。该算法根据请求的目标IP地址找出该目标IP地址对应的服务器组,按"最小连接"原则从服务器组中选出一台服务器,若服务器没有超载,将请求发送到该服务器,若服务器超载;则按"最小连接"原则从这个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器。同时,当该服务器组有一段时间没有被修改,将最忙的服务器从服务器组中删除,以降低复制的程度。
--------------------------------------------------------------------------
为什么选择的是“最忙的服务器”?为什么不是“最少的”?
我觉得我好象是钻到牛角尖了,谁能点播一下。
|
MPI就一个库而已,算法的东西当然不在这里了。用MPI不要忘了和PVM比较一下,那不仅是个库,也是个运行环境。mosix当然也很好,不过现在用这种东西的人太少了。linux集群谈得多的还是LVS,大家都重在如何提供服务嘛。