当前位置: 首页 > news >正文

如何创办视频网站麻城seo

如何创办视频网站,麻城seo,南阳网站制作价格,小学生网上学做辅导哪个网站好2019独角兽企业重金招聘Python工程师标准 简介 NFS4实现“租赁锁”。每个锁拥有一样的“租赁期”。客户端的读写操作将刷新“租赁期”。租赁期到期后#xff0c;锁将被服务器释放。NFS4通过下述“模型”实现对锁的管理#xff1a; 1) 清晰地划分客户端和服务器… 2019独角兽企业重金招聘Python工程师标准 简介 NFS4实现“租赁锁”。每个锁拥有一样的“租赁期”。客户端的读写操作将刷新“租赁期”。租赁期到期后锁将被服务器释放。NFS4通过下述“模型”实现对锁的管理 1) 清晰地划分客户端和服务器 2) 可靠的锁的一致性检测机制 3) 简单可靠的锁状态恢复机制 几个概念 Client -- 客户端是访问NFS服务器的资源的实体。客户端是包含直接访问NFS服务器的一个应用程序。客户端可以是传统的操作系统远程文件系统服务的应用程序。客户端负责维护一个或多个用户应用程序的NFS锁。客户端崩溃或失败时它负责管理重新获取锁。请注意多个客户端可以共享相同的传输多个客户端可能存在于同一个网络节点。 Clientid  --- 64位的id标识符。客户端经过认证后由服务器分配的整型数用于后续通讯中标识客户端。 Server  --- 负责协调客户端访问文件系统的实体。 Stateid  --- 128位变量用于标识特定文件状态(打开和锁定)。由服务器分配根据stateid可找到相应的状态信息表。 关键流程 1) 客户端认证(申请clientid)  客户端启动 -- 发送nfs_client_id4(verifier和id串) SETCLIENTID -- 服务器分配clientid -- 客户端发送clientid 给服务器端二次确认SETCLIENTID_CONFIRM -- 认证成功(建立server记录) 2) 状态建立(申请stateid) -- 带状态的文件操作 -- 撤销状态 客户端用clientid为特定lock_owner发起锁申请 -- 服务器锁定文件并发回stateid (建立状态表)-- 客户端用stateid进行文件读写-- 撤销状态即撤销stateid NFS 4 为支持文件锁需要解决的问题 1 如何识别客户端不同客户端客户端重启 2 如何识别服务器服务器是否重启 3 如何维护锁状态正常流程重启恢复 4 如何保证“至多一次”的锁状态更新 5 状态同步客户端失败服务器成功下的状态同步   1 如何识别客户端不同客户端客户端重启 每个客户端均必须经过服务器端的认证并获取服务器端分配的唯一标识符clientid。在后续操作中NFS系统采用clientid表示该客户端。 客户端发起认证时需提供两个信息verifier和idverifier用于表示该客户端是否是重启客户端(重启客户端将撤销所有此客户端的锁状态)id是该客户端用户标识自己身份的唯一字符串。Id串一般由如下几部分组成客户端地址(ipport)服务器地址(ipport), MAC等机器唯一的信息。socket的通讯五元组可作为同一个server下的唯一标识串加上MAC等信息是为了防止不同客户端的ip重用。 在上述id生成规则下不同客户端将生成唯一的标识串。客户端重启时id不变仅改变verifier。为了实现重启时id不变每个客户端配一个监控进程监控进程生成id和verifier并启动客户端重启时改变verifier。   2 如何识别服务器服务器是否重启 服务器的标识放在stateid中由于服务器的唯一性可用进程id来标识服务器。服务器重启后进程id改变相应的stateid中server标识也将改变导致stateid失效。同时服务器重启将导致所有锁信息丢失(无信息持久化)也导致stateid失效。   3 如何维护锁状态正常流程重启恢复 正常流程 针对特定文件lock_owner可申请相应的锁(状态申请)得到服务器分配的stateid表示锁请求成功。在后续操作中该owner均使用stateid进行文件操作。 异常处理流程 a) 客户端失败死锁网络不可达无法正常工作 NFS 4采用的租赁锁有特定的租赁期限。若客户端失败服务器不做任何特殊处理(无法区分客户端正常与否)等待租赁锁到期锁自然释放。 b) 客户端重启 客户端重启服务器根据客户端发过来的verifier可知客户端重启服务器主动释放与该客户端id相关的所有锁。 c) 服务器失败 -- 无法处理只能重启服务器 d) 服务器重启 服务器重启将导致所有的客户端锁状态失效客户端进行文件操作时将知道lock状态丢失。当lock状态丢失client应该重建锁状态。 Server重启后lease period期间内为客户端重建锁状态时期。在此期间server可以阻塞所有的读、写、lock等请求除非server能够确保不发生锁冲突(比如持久化锁状态于磁盘) e) 网络不可达 网络不可达基本等同于客户端失败服务器等待租赁锁失效。但当网络不可达和服务器重启同时出现时可能出现两种难以处理的情形需要持久化存储锁状态方能解决略去。   4 如何保证“至多一次”的锁状态更新 在和文件锁相关的操作中(加锁升级降级解锁)多次操作是不允许的。这就要求相应的操作具有“至多一次(at-most-once)”语义。为实现“至多一次”的锁状态更新NFS引入“序列化机制”以应对网络重传和重排序。具体实现如下每个锁状态更新请求均携带序列号。该序列号是一个连续递增整数由客户端维护不同lock_owners拥有不同的序列号初始值为0。服务器在状态表中缓存最后收到的序列号(last sequence number (L))和应答(response)。只有当下次锁状态更新请求的序列号为L1时该请求才被视为有效请求 注意 a) 客户端必须保证不多于一个的锁状态更新请求(同一锁状态更新请求可多次发送序列号相同) b) 当服务器收到相同的锁状态更新请求(序列号相同)时缓存的应答将发送给客户端而无相应锁操作被执行。   5 状态同步客户端失败服务器成功下的状态同步 当锁状态更新请求失败后如超时服务器的锁状态可能已经改变。为了保证客户端的锁状态的一致性客户端应该重发“失败”的锁状态更新请求同步状态即客户端必须缓存失败的锁状态更新请求并在下次提交锁状态更新请求前重发该lock_owner缓存的锁状态更新请求 “二次确认机制”也能确保状态的一致性但成本高重发机制只有在失败后才会重新发送成本低(锁状态更新请求远比客户端认证频繁)。 参考文献RFC 3530 转载于:https://my.oschina.net/linjiezang/blog/1845157
http://www.huolong8.cn/news/383814/

相关文章:

  • 网站建设工具有哪些清华紫光做网站
  • 网站建设公司收费企业网站推广的目的
  • 优秀企业站网站餐饮招商加盟网站建设
  • Wordpress怎么添加购买页面seo免费工具
  • 网站开发菜鸟教程网站所用的图片大小
  • 有哪些网站代做包装毕设嘉兴网站排名
  • 如何不备案建网站wordpress分页404
  • 成都网站建设龙兵网络p2p理财网站开发流程
  • 网站开发php和c语言区别wordpress没权限
  • 企业网站需要多少钱网站字体只能用
  • 深圳网站设计价格贵州三大交通建设企业
  • 网站建设课程设计内容个人证书查询网入口免费
  • php 网站缓存百度应用宝
  • 机械英语网站企业网站的维护
  • 网站开发与设计实训心得网页设计html代码大全桂林
  • 怎么用百度云做网站空间wordpress多语好利弊
  • 小程序就是做网站做网站大公司还是小公司
  • 上饶有哪些做网站的公司企业网站美工设计
  • seo对网站的重要性东莞市seo网络推广报价
  • 手机新手学做网站网站建设有什么证
  • 网站建设网站维护万网域名安装wordpress
  • 阜新市项目建设网站wordpress 技术主题
  • 博客论坛网站开发做网站怎么上词
  • 团购网站怎么做网站文章发布
  • 怎么管理购物网站设计通网站建设
  • 苏州姑苏区网站建设公司形象vi设计
  • No酒店网站建设如何做网站对话框
  • 英文网站seo 谷歌英文网页设计欣赏
  • 现在建网站做推广能赚钱吗免费ppt制作
  • 济南多语言网站建设网站静态页模板