时区和时间戳

时区和时间戳


从漫画中举的例子来看,这里的时间戳,指的就是Unix时间戳(Unix timestamp)。它也被称为Unix时间(Unix time)、POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。因此,严格来说,不管你处在地球上的哪个地方,任意时间点的时间戳都是相同的。这点有利于线上和客户端分布式应用统一追踪时间信息。

格林威治时间(GMT)

是指位于英国伦敦郊区的皇家格林尼治天文台当地的平太阳时,因为本初子午线被定义为通过那里的经线。

历史

人们最初确定时间的方式是直接观测太阳在当地天空中的位置,例如使用日晷,这样测量出来的时间被称为地方真太阳时(local apparent solar time / local apparent time)。后来,人们为了解决地球公转轨道不是正圆和黄道与赤道之间存在夹角而造成的测出的时间的流逝不均匀的问题,以假想天体“平太阳”(mean Sun)为基准测量时间,而不再以真太阳为基准,这样测量出来的时间被称为地方平太阳时(local mean solar time / local mean time)。地方真太阳时和地方平太阳时的差异被称为均时差(equation of time)。

后来,格林尼治天文台所在地的地方平太阳时被定义为全世界的时间标准,被称为格林尼治平时(Greenwich Mean Time),“平时(mean time)”就是“平太阳时(mean solar time)”的意思。

平太阳时

平太阳或假太阳是一个假想的天体,它每年和真太阳同时从春分点出发,在天赤道上从西向东匀速运行,这个速度相当于真太阳在黄道上运行的平均速度,最后和真太阳同时回到春分点。

平太阳是美国天文学家纽康提出来的,主要是为了得到一个均匀适用的日常时间。

平太阳日是经由观察太阳相对于恒星的周日运动,所获得的平均太阳时,经由人为的调整而显示在时钟上的时间。

本初子午线

本初子午线(英语:Prime meridian),即0度经线,亦称格林威治子午线、格林尼治子午线或本初经线,是经过英国格林尼治天文台的一条经线(亦称子午线)。本初子午线的东西两边分别定为东经和西经,于180度相遇。

时区

时区是地球上的区域使用同一个时间定义。以前,人们通过观察太阳的位置(时角)决定时间,这就使得不同经度的地方的时间有所不同(地方时)。1863年,首次使用时区的概念。时区通过设立一个区域的标准时间部分地解决了这个问题。

https://www.zeitverschiebung.net/cn/timezone/asia--shanghai

世界各个国家位于地球不同位置上,因此不同国家,特别是东西跨度大的国家日出、日落时间必定有所偏差。这些偏差就是所谓的时差。

时区缩写装车

IST - India Standard Time - UTC+5:30,印度标准时间
IST - Israel Standard Time - UTC+2:00,以色列标准时间
CST - Central Standard Time (USA) UT-6:00 美国标准时间
CST -Central Standard Time (Australia) UT+9:30 澳大利亚标准时间
CST -China Standard Time UT+8:00 中国标准时间
CST -Cuba Standard Time UT-4:00 古巴标准时间

协调世界时(UTC)

协调世界时(英语:Coordinated Universal Time简称UTC)是最主要的世界时间标准,其以原子时秒长为基础,在时刻上尽量接近于格林尼治标准时间。

协调世界时是世界上调节时钟和时间的主要时间标准,它与0度经线的平太阳时相差不超过1秒[4],并不遵守夏令时。协调世界时是最接近格林威治标准时间(GMT)的几个替代时间系统之一。对于大多数用途来说,UTC时间被认为能与GMT时间互换,但GMT时间已不再被科学界所确定。

闰秒

协调世界时把时间分为天、小时、分钟和秒。通常,天是使用格里历(公历)定义的,但也能使用儒略日。每天包含24小时,每小时包含60分钟。一分钟通常有60秒,但加入了随机的闰秒后,一分钟可能是61秒或59秒[11]。因此,在UTC系统的时间尺度中,秒和比秒小的单位(毫秒、微秒等)其长度是固定的,但是对于分钟和比分还大的单位(小时、天、周等),其长度是可变的。国际地球自转服务组织(IERS)做出插入闰秒的决定,并至少在加入前6个月发布在该组织的“公告C”中[12][13] 。闰秒是无法提前很早预知的,因为地球的自转速率是不可预测的[14]。

和 GMT 的关系

UTC = GMT +/- 0.9 s

ISO 8601

国际标准ISO 8601,是国际标准化组织的日期和时间的表示方法,全称为《数据存储和交换形式·信息交换·日期和时间的表示方法》。

解析

 
  1. 2018-05-11T06:25:05.578Z
  2. T 代表日期和时间的连接符
  3. Z 表示是 UTC 时间

标准

时间戳

时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。 它的提出主要是为用户提供一份电子证据, 以证明用户的某些数据的产生时间。 在实际应用上, 它可以使用在包括电子商务、 金融活动的各个方面, 尤其可以用来支撑公开密钥基础设施的 “不可否认” 服务。

  1. unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
  2. Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)
  3. 是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
  4. UNIX时间戳的0按照ISO 8601规范为 :1970-01-01T00:00:00Z.
  5. 一个小时表示为UNIX时间戳格式为:3600秒;一天表示为UNIX时间戳为86400秒,闰秒不计算。

你可能感兴趣的:(时区和时间戳)