分类 工作 下的文章

mysql 中 时间和日期函数

一、MySQL 获得当前日期时间 函数

1.1 获得当前日期+时间(date + time)函数:now()

mysql> select now();

+---------------------+
| now() |
+---------------------+
| 2008-08-08 22:20:46 |
+---------------------+

除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:

current_timestamp()
,current_timestamp
,localtime()
,localtime
,localtimestamp -- (v4.0.6)
,localtimestamp() -- (v4.0.6)

这些日期时间函数,都等同于 now()。鉴于 now() 函数简短易记,建议总是使用 now() 来替代上面列出的函数。

1.2 获得当前日期+时间(date + time)函数:sysdate()

sysdate() 日期时间函数跟 now() 类似,不同之处在于:now() 在执行开始时值就得到了, sysdate() 在函数执行时动态得到值。看下面的例子就明白了:

mysql> select now(), sleep(3), now();

+---------------------+----------+---------------------+
| now() | sleep(3) | now() |
+---------------------+----------+---------------------+
| 2008-08-08 22:28:21 | 0 | 2008-08-08 22:28:21 |
+---------------------+----------+---------------------+

mysql> select sysdate(), sleep(3), sysdate();

+---------------------+----------+---------------------+
| sysdate() | sleep(3) | sysdate() |
+---------------------+----------+---------------------+
| 2008-08-08 22:28:41 | 0 | 2008-08-08 22:28:44 |
+---------------------+----------+---------------------+

可以看到,虽然中途 sleep 3 秒,但 now() 函数两次的时间值是相同的; sysdate() 函数两次得到的时间值相差 3 秒。MySQL Manual 中是这样描述 sysdate() 的:Return the time at which the function executes。

sysdate() 日期时间函数,一般情况下很少用到。

  1. 获得当前日期(date)函数:curdate()

mysql> select curdate();

+------------+
| curdate() |
+------------+
| 2008-08-08 |
+------------+

其中,下面的两个日期函数等同于 curdate():

current_date()
,current_date

  1. 获得当前时间(time)函数:curtime()

mysql> select curtime();

+-----------+
| curtime() |
+-----------+
| 22:41:30 |
+-----------+

其中,下面的两个时间函数等同于 curtime():

current_time()
,current_time

  1. 获得当前 UTC 日期时间函数:utc_date(), utc_time(), utc_timestamp()

mysql> select utc_timestamp(), utc_date(), utc_time(), now()

+---------------------+------------+------------+---------------------+
| utc_timestamp() | utc_date() | utc_time() | now() |
+---------------------+------------+------------+---------------------+
| 2008-08-08 14:47:11 | 2008-08-08 | 14:47:11 | 2008-08-08 22:47:11 |
+---------------------+------------+------------+---------------------+

因为我国位于东八时区,所以本地时间 = UTC 时间 + 8 小时。UTC 时间在业务涉及多个国家和地区的时候,非常有用。
二、MySQL 日期时间 Extract(选取) 函数。

  1. 选取日期时间的各个部分:日期、时间、年、季度、月、日、小时、分钟、秒、微秒

set @dt = '2008-09-10 07:15:30.123456';

select date(@dt); -- 2008-09-10
select time(@dt); -- 07:15:30.123456
select year(@dt); -- 2008
select quarter(@dt); -- 3
select month(@dt); -- 9
select week(@dt); -- 36
select day(@dt); -- 10
select hour(@dt); -- 7
select minute(@dt); -- 15
select second(@dt); -- 30
select microsecond(@dt); -- 123456

  1. MySQL Extract() 函数,可以上面实现类似的功能:

set @dt = '2008-09-10 07:15:30.123456';

select extract(year from @dt); -- 2008
select extract(quarter from @dt); -- 3
select extract(month from @dt); -- 9
select extract(week from @dt); -- 36
select extract(day from @dt); -- 10
select extract(hour from @dt); -- 7
select extract(minute from @dt); -- 15
select extract(second from @dt); -- 30
select extract(microsecond from @dt); -- 123456

select extract(year_month from @dt); -- 200809
select extract(day_hour from @dt); -- 1007
select extract(day_minute from @dt); -- 100715
select extract(day_second from @dt); -- 10071530
select extract(day_microsecond from @dt); -- 10071530123456
select extract(hour_minute from @dt); -- 715
select extract(hour_second from @dt); -- 71530
select extract(hour_microsecond from @dt); -- 71530123456
select extract(minute_second from @dt); -- 1530
select extract(minute_microsecond from @dt); -- 1530123456
select extract(second_microsecond from @dt); -- 30123456

MySQL Extract() 函数除了没有date(),time() 的功能外,其他功能一应具全。并且还具有选取‘day_microsecond’ 等功能。注意这里不是只选取 day 和 microsecond,而是从日期的 day 部分一直选取到 microsecond 部分。够强悍的吧!

MySQL Extract() 函数唯一不好的地方在于:你需要多敲几次键盘。

  1. MySQL dayof… 函数:dayofweek(), dayofmonth(), dayofyear()

分别返回日期参数,在一周、一月、一年中的位置。

set @dt = '2008-08-08';

select dayofweek(@dt); -- 6
select dayofmonth(@dt); -- 8
select dayofyear(@dt); -- 221

日期 ‘2008-08-08′ 是一周中的第 6 天(1 = Sunday, 2 = Monday, …, 7 = Saturday);一月中的第 8 天;一年中的第 221 天。

  1. MySQL week… 函数:week(), weekofyear(), dayofweek(), weekday(), yearweek()

set @dt = '2008-08-08';

select week(@dt); -- 31
select week(@dt,3); -- 32
select weekofyear(@dt); -- 32

select dayofweek(@dt); -- 6
select weekday(@dt); -- 4

select yearweek(@dt); -- 200831

MySQL week() 函数,可以有两个参数,具体可看手册。 weekofyear() 和 week() 一样,都是计算“某天”是位于一年中的第几周。 weekofyear(@dt) 等价于 week(@dt,3)。

MySQL weekday() 函数和 dayofweek() 类似,都是返回“某天”在一周中的位置。不同点在于参考的标准, weekday:(0 = Monday, 1 = Tuesday, …, 6 = Sunday); dayofweek:(1 = Sunday, 2 = Monday, …, 7 = Saturday)

MySQL yearweek() 函数,返回 year(2008) + week 位置(31)。

  1. MySQL 返回星期和月份名称函数:dayname(), monthname()

set @dt = '2008-08-08';

select dayname(@dt); -- Friday
select monthname(@dt); -- August

思考,如何返回中文的名称呢?

  1. MySQL last_day() 函数:返回月份中的最后一天。

select last_day('2008-02-01'); -- 2008-02-29
select last_day('2008-08-08'); -- 2008-08-31

MySQL last_day() 函数非常有用,比如我想得到当前月份中有多少天,可以这样来计算:

mysql> select now(), day(last_day(now())) as days;

+---------------------+------+
| now() | days |
+---------------------+------+
| 2008-08-09 11:45:45 | 31 |
+---------------------+------+

三、MySQL 日期时间计算函数

  1. MySQL 为日期增加一个时间间隔:date_add()

set @dt = now();

select date_add(@dt, interval 1 day); -- add 1 day
select date_add(@dt, interval 1 hour); -- add 1 hour
select date_add(@dt, interval 1 minute); --
select date_add(@dt, interval 1 second);
select date_add(@dt, interval 1 microsecond);
select date_add(@dt, interval 1 week);
select date_add(@dt, interval 1 month);
select date_add(@dt, interval 1 quarter);
select date_add(@dt, interval 1 year);

select date_add(@dt, interval -1 day); -- sub 1 day

MySQL adddate(), addtime()函数,可以用 date_add() 来替代。下面是 date_add() 实现 addtime() 功能示例:

mysql> set @dt = '2008-08-09 12:12:33';

mysql>
mysql> select date_add(@dt, interval '01:15:30' hour_second);

+------------------------------------------------+
| date_add(@dt, interval '01:15:30' hour_second) |
+------------------------------------------------+
| 2008-08-09 13:28:03 |
+------------------------------------------------+

mysql> select date_add(@dt, interval '1 01:15:30' day_second);

+-------------------------------------------------+
| date_add(@dt, interval '1 01:15:30' day_second) |
+-------------------------------------------------+
| 2008-08-10 13:28:03 |
+-------------------------------------------------+

date_add() 函数,分别为 @dt 增加了“1小时 15分 30秒” 和 “1天 1小时 15分 30秒”。建议:总是使用 date_add() 日期时间函数来替代 adddate(), addtime()。

  1. MySQL 为日期减去一个时间间隔:date_sub()

mysql> select date_sub('1998-01-01 00:00:00', interval '1 1:1:1' day_second);

+----------------------------------------------------------------+
| date_sub('1998-01-01 00:00:00', interval '1 1:1:1' day_second) |
+----------------------------------------------------------------+
| 1997-12-30 22:58:59 |
+----------------------------------------------------------------+

MySQL date_sub() 日期时间函数 和 date_add() 用法一致,不再赘述。另外,MySQL 中还有两个函数 subdate(), subtime(),建议,用 date_sub() 来替代。

  1. MySQL 另类日期函数:period_add(P,N), period_diff(P1,P2)

函数参数“P” 的格式为“YYYYMM” 或者 “YYMM”,第二个参数“N” 表示增加或减去 N month(月)。

MySQL period_add(P,N):日期加/减去N月。

mysql> select period_add(200808,2), period_add(20080808,-2)

+----------------------+-------------------------+
| period_add(200808,2) | period_add(20080808,-2) |
+----------------------+-------------------------+
| 200810 | 20080806 |
+----------------------+-------------------------+

MySQL period_diff(P1,P2):日期 P1-P2,返回 N 个月。

mysql> select period_diff(200808, 200801);

+-----------------------------+
| period_diff(200808, 200801) |
+-----------------------------+
| 7 |
+-----------------------------+

在 MySQL 中,这两个日期函数,一般情况下很少用到。

  1. MySQL 日期、时间相减函数:datediff(date1,date2), timediff(time1,time2)

MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数。

select datediff('2008-08-08', '2008-08-01'); -- 7
select datediff('2008-08-01', '2008-08-08'); -- -7

MySQL timediff(time1,time2):两个日期相减 time1 - time2,返回 time 差值。

select timediff('2008-08-08 08:08:08', '2008-08-08 00:00:00'); -- 08:08:08
select timediff('08:08:08', '00:00:00'); -- 08:08:08

注意:timediff(time1,time2) 函数的两个参数类型必须相同。
四、MySQL 日期转换函数、时间转换函数

  1. MySQL (时间、秒)转换函数:time_to_sec(time), sec_to_time(seconds)

select time_to_sec('01:00:05'); -- 3605
select sec_to_time(3605); -- '01:00:05'

  1. MySQL (日期、天数)转换函数:to_days(date), from_days(days)

select to_days('0000-00-00'); -- 0
select to_days('2008-08-08'); -- 733627

select from_days(0); -- '0000-00-00'
select from_days(733627); -- '2008-08-08'

  1. MySQL Str to Date (字符串转换为日期)函数:str_to_date(str, format)

select str_to_date('08/09/2008', '%m/%d/%Y'); -- 2008-08-09
select str_to_date('08/09/08' , '%m/%d/%y'); -- 2008-08-09
select str_to_date('08.09.2008', '%m.%d.%Y'); -- 2008-08-09
select str_to_date('08:09:30', '%h:%i:%s'); -- 08:09:30
select str_to_date('08.09.2008 08:09:30', '%m.%d.%Y %h:%i:%s'); -- 2008-08-09 08:09:30

可以看到,str_to_date(str,format) 转换函数,可以把一些杂乱无章的字符串转换为日期格式。另外,它也可以转换为时间。“format” 可以参看 MySQL 手册。

  1. MySQL Date/Time to Str(日期/时间转换为字符串)函数:date_format(date,format), time_format(time,format)

mysql> select date_format('2008-08-08 22:23:00', '%W %M %Y');

+------------------------------------------------+
| date_format('2008-08-08 22:23:00', '%W %M %Y') |
+------------------------------------------------+
| Friday August 2008 |
+------------------------------------------------+

mysql> select date_format('2008-08-08 22:23:01', '%Y%m%d%H%i%s');

+----------------------------------------------------+
| date_format('2008-08-08 22:23:01', '%Y%m%d%H%i%s') |
+----------------------------------------------------+
| 20080808222301 |
+----------------------------------------------------+

mysql> select time_format('22:23:01', '%H.%i.%s');

+-------------------------------------+
| time_format('22:23:01', '%H.%i.%s') |
+-------------------------------------+
| 22.23.01 |
+-------------------------------------+

MySQL 日期、时间转换函数:date_format(date,format), time_format(time,format) 能够把一个日期/时间转换成各种各样的字符串格式。它是 str_to_date(str,format) 函数的 一个逆转换。

  1. MySQL 获得国家地区时间格式函数:get_format()

MySQL get_format() 语法:

get_format(date|time|datetime, 'eur'|'usa'|'jis'|'iso'|'internal'

MySQL get_format() 用法的全部示例:

select get_format(date,'usa') ; -- '%m.%d.%Y'
select get_format(date,'jis') ; -- '%Y-%m-%d'
select get_format(date,'iso') ; -- '%Y-%m-%d'
select get_format(date,'eur') ; -- '%d.%m.%Y'
select get_format(date,'internal') ; -- '%Y%m%d'
select get_format(datetime,'usa') ; -- '%Y-%m-%d %H.%i.%s'
select get_format(datetime,'jis') ; -- '%Y-%m-%d %H:%i:%s'
select get_format(datetime,'iso') ; -- '%Y-%m-%d %H:%i:%s'
select get_format(datetime,'eur') ; -- '%Y-%m-%d %H.%i.%s'
select get_format(datetime,'internal') ; -- '%Y%m%d%H%i%s'
select get_format(time,'usa') ; -- '%h:%i:%s %p'
select get_format(time,'jis') ; -- '%H:%i:%s'
select get_format(time,'iso') ; -- '%H:%i:%s'
select get_format(time,'eur') ; -- '%H.%i.%s'
select get_format(time,'internal') ; -- '%H%i%s'

MySQL get_format() 函数在实际中用到机会的比较少。

  1. MySQL 拼凑日期、时间函数:makdedate(year,dayofyear), maketime(hour,minute,second)

select makedate(2001,31); -- '2001-01-31'
select makedate(2001,32); -- '2001-02-01'

select maketime(12,15,30); -- '12:15:30'

五、MySQL 时间戳(Timestamp)函数

  1. MySQL 获得当前时间戳函数:current_timestamp, current_timestamp()

mysql> select current_timestamp, current_timestamp();

+---------------------+---------------------+
| current_timestamp | current_timestamp() |
+---------------------+---------------------+
| 2008-08-09 23:22:24 | 2008-08-09 23:22:24 |
+---------------------+---------------------+

  1. MySQL (Unix 时间戳、日期)转换函数:

unix_timestamp(),
unix_timestamp(date),
from_unixtime(unix_timestamp),
from_unixtime(unix_timestamp,format)

下面是示例:

select unix_timestamp(); -- 1218290027
select unix_timestamp('2008-08-08'); -- 1218124800
select unix_timestamp('2008-08-08 12:30:00'); -- 1218169800

select from_unixtime(1218290027); -- '2008-08-09 21:53:47'
select from_unixtime(1218124800); -- '2008-08-08 00:00:00'
select from_unixtime(1218169800); -- '2008-08-08 12:30:00'

select from_unixtime(1218169800, '%Y %D %M %h:%i:%s %x'); -- '2008 8th August 12:30:00 2008'

  1. MySQL 时间戳(timestamp)转换、增、减函数:

timestamp(date) -- date to timestamp
timestamp(dt,time) -- dt + time
timestampadd(unit,interval,datetime_expr) --
timestampdiff(unit,datetime_expr1,datetime_expr2) --

请看示例部分:

select timestamp('2008-08-08'); -- 2008-08-08 00:00:00
select timestamp('2008-08-08 08:00:00', '01:01:01'); -- 2008-08-08 09:01:01
select timestamp('2008-08-08 08:00:00', '10 01:01:01'); -- 2008-08-18 09:01:01

select timestampadd(day, 1, '2008-08-08 08:00:00'); -- 2008-08-09 08:00:00
select date_add('2008-08-08 08:00:00', interval 1 day); -- 2008-08-09 08:00:00

MySQL timestampadd() 函数类似于 date_add()。

select timestampdiff(year,'2002-05-01','2001-01-01'); -- -1
select timestampdiff(day ,'2002-05-01','2001-01-01'); -- -485
select timestampdiff(hour,'2008-08-08 12:00:00','2008-08-08 00:00:00'); -- -12

select datediff('2008-08-08 12:00:00', '2008-08-01 00:00:00'); -- 7

MySQL timestampdiff() 函数就比 datediff() 功能强多了,datediff() 只能计算两个日期(date)之间相差的天数。
六、MySQL 时区(timezone)转换函数

convert_tz(dt,from_tz,to_tz)

select convert_tz('2008-08-08 12:00:00', '+08:00', '+00:00'); -- 2008-08-08 04:00:00

时区转换也可以通过 date_add, date_sub, timestampadd 来实现。

select date_add('2008-08-08 12:00:00', interval -8 hour); -- 2008-08-08 04:00:00
select date_sub('2008-08-08 12:00:00', interval 8 hour); -- 2008-08-08 04:00:00
select timestampadd(hour, -8, '2008-08-08 12:00:00'); -- 2008-08-08 04:00:00

ProcessMaker 概念

原文在这,有些不好理解,翻译为简体,ProcessMaker实际上是比较适合中国人使用的工作流引擎,工作流引擎的比较将来结合使用经验会有个比较,计划将ProcessMaker结合进Thinkphp。

学习ProcessMaker的第一步,是了解ProcessMaker中使用到的一些名词。基本上,ProcessMaker是与BPMN相容的,许多定义也是与BPMN标准相同,若您使用过BPMN相容的流程工具,下面很多名词与观念应该可以很容易了解。

一 流程定义(Process)

一个流程(Process),可对应到一个业务流程,是一些工作阶段(Task)的集合,这些工作阶段有一个或多个输入与输出,流程的输出可能是一个有形的物品或服务

二 流程实例(Case)

一个桉件(Case),是流程定义的一个实例,一个商业桉件(Business Case)可以说是一个进行中的工作(Word in Progress)。一个桉件就是执行一个流程的过程。一个桉件从开始到结束都使用相同的桉件编号。

三 流程实例变量(Case Variables)

桉件变数是ProcessMaker桉件执行过程中存放资讯的特殊变数,只有在桉件执行的过程中才有效。在动态输入表格(Dynaform)中的每一个栏位,如textboxes, checkboxes, dropdown boxes与grid objects等,都有一个相关的桉件变数,与该栏位名称相同,且会存放使用者在栏位中输入的值。当使用者在Dynaform中按下Submit按钮(或"下一步"连结)后,每个栏位对应的桉件变数就会被建立用来存放输入的值。

四 节点定义(Task)

一个关卡(Task)是一系列有相同目的的工作步骤(Steps)的组合。而关卡的集合形成一个流程。一个关卡(Task)与一个活动(activity)有点不同,一个活动(activity)是一个关卡(Task)的实例。关卡相对与活动就类似流程相对于桉件。 关卡与流程是定义,活动与桉件是实例(实际进行的工作)。

五 动态表格-节点视图(Dynaform)

Dynaform也称为Dynamic Forms,是在ProcessMaker中设计客製的输入表格,用来在桉件执行过程中与使用者互动的界面。Dynaform让使用者以图形化的界面查看与输入资料,在设计上,对任何使用者应该要直觉好用。

六 业务表单(Master Dynaform)

主动态表格用来呈现单笔记录,栏位预设是垂直排列的。 主动态表格是独立的表格,不可以嵌入到其它的表格中。

七 框格(Grid)

框格表格(Grid Form)用来呈现多笔记录,每一笔记录的栏位以水平方向排列,一笔记录一列。Grid form也可以使用特殊的彙整功能,如合计(sum)来进行特定栏位的加总计算。

八 插件(Plugin)

插件用来增加ProcessMaker额外的功能,或客製化界面与资料库。

九 流程图(Process Map)

流程图是商业流程各工作阶段与引导法则(如上个工作阶段到下个工作阶段的条件)的视觉表示法. Admin可以直接从流程图增加新的或修改现有的桉件与引导法则。

十 权限(Permissions)

赋予使用者或群组存取ProcessMaker特定元件(如文件,Dashboard, Case Notes)的法则(rule)。

十一 流程权限(Process Permissions)

流程权限用来给予使与者或群组对桉件或桉件中的物件(如DynaForms, Input Documents and Output Documents)唯读的权限 . 预设只有流程指定的使用者可以开启相关个桉. 为了允许其他使用者可以看到(但不能变更)桉件中的资料, 可以指定流程权限 给这些使用者. 流程权限也提供进阶的控制功能,设定其他使用者可以查看的是某些特定关卡的资讯.

十二 流程总管(Process Supervisor)

一个流程的流程总管有权检视该流程所有的桉件(Cases)。 通常一个组织的经理或部门主管会被指定为某个流程的总管。流程总管可以给定所有个桉读与写的权限。

十三 角色(Roles)

角色包含对ProcessMaker中特定范围,特定功能的权限。基本上ProcessMaker包含三种角色 PROCESSMAKER_ADMIN, PROCESSMAKER_MANAGER和PROCESSMAKER_OPERATOR, 这些角色可以设定存取 ADMIN 选单, Users tab等功能的权限.

十四 步骤(Steps)

一个步骤(Steps)是一个清楚定义的动作(action)。可能是人工的动作或自动化的动作。 一个关卡(Task)由一个或多个步骤所组成。例如: 上传一份文件,填写一个Dynaform, 下载一份PDF or DOC文件。

十五 事件(Events)

流程中多数的动作是由使用者手动执行。但某些动作需要在特定的时间执行. 在ProcessMaker中, 事件(events) 就是在一个工作阶段或一系列的工作阶段开始或结束时才能执行的行动(actions) , 因此事件需要排程器cron做正确的设定. 因为事件与工作阶段的运作紧密相关, 它们只有在工作阶段尚未结束时才能执行. 如果选定的工作已经完成(或这个个桉被暂停/取消或删除),这事件就不会执行.

事件可能是传送邮件讯息或执行一个trigger. 2.0版后增加了第三个事件"条件事件", 条件事件根据特定桉件的状态来执行. 注: 事件必须从第二个关卡以后(含)才能执行。

VPN 工具选择,持续更新[2023-03-23更新]

由于工作原因,苦逼码农,必须翻墙,百度不仅搜不到,关键是浪费时间,多年来用了很多的VPN,有免费也有收费的,今天总结一下吧。

PC端Clash
手机端SSR

2023-03-23更新
增加备用雪云

2022-09-18更新
主力blinkload挂了
更换为草莓

2022-07-26更新
祝党百年生日快乐。

2020-11-23 更新

备用VPN
https://geckoiplc.org/register?aff=z9dkkpHM
Git地址
https://github.com/HMBSbige/ShadowsocksR-Windows/releases/tag/5.1.10

2020-06-13 更新

由于之前muncloud不稳定,现在换了blinkload,目前还算稳定

muncloud作为备选方案,aff地址为muncloud

免费篇

免费的肯定有各种问题,有WEB在线翻的,也有免费的工具,到目前为止,只有一款免费软件,是仍然在使用的,就是自由门,这个软件多年来一直在更新,每当正房各种原因挂掉之后,会用她来救急,从不干涉你的生活,只在需要的时候出现,还不要钱,还能说什么呢,只能说我的心里有你的位置。

长时间使用的还有Google GoAgent,但是随着Google的全面退出,效果也越来越差,而且配置繁琐。

有段时间 租了AWS 搭建VPN,视频或者下载基本没法用不说,主要是速度慢的不行。

空窗期也有用过bing,虽然和VPN无关,但是总比百度强那么一丢丢。

其他的免费的软件,基本没有使用价值。

收费篇

收费的基本有白鸽、云梯、红杏、FQRouter、鲨鱼、skynetg 等等。

其中体验过并真正付费的按照顺序有 红杏、云梯、skynetg,skynetg 目前在用,

其中红杏,地址是honx.in,别的是李鬼,Chrome插件,优点一是速度快且没有流量限制,虽然不怎么看视频,只是Google,但是很讨厌限制,讨厌限制,讨厌限制;二是收费最便宜,一个月十几块钱;三是使用简单且用户体验好,插件安装,登录账户,设置黑白名单即可。缺点一是同时支持两个客户端,对我来说也够了,老婆看美剧买蓝光,盗版的,基本自己在用,笔记本和台式机两个,手机不用;缺点二是售后服务不行,但是产品不错,基本不需要售后。

最怀念的也是红杏,怀念是因为已经挂了,而且年费也没有退,8月份挂的,应该是“长城”升级了,用过最满意的VPN,没有之一。

接着是云梯,年费也交了,优点一是速度快,但是有流量限制;二是价格也不贵,比红杏稍微贵点;三是客服是神一样的存在,态度非常好,而且退款很及时,红杏比较来说做的不好,不仅没有解释,而且没有退款;缺点也比较明显设置麻烦,需要客户设置VPN,也许我比较弱智吧,配了半天也弄不好,但是Iphone是可以使用的,速度也不错,我其实想的是请客服远程帮我来解决一下,但是拒绝了,产品不行,服务来凑,可以理解,但是问题终归没有解决,退款了。

目前用的是skynetg, 地址是skynetgVPN, 里面有我的邀请码,各家都一样,一是速度快,但是有流量限制,最便宜的是20G,够用但是不爽;二是使用简单,免安装;但是价格也是最贵的,20多一个月,买了一年,选的日本2节点速度最快。

skynetg在2017年4月也挂掉了,目前使用91cloud,91cloud域名更新了,优惠地址是91cloud

PS: 域名换过了

其他的收费VPN,没有深度体验,即没有真正交钱,不说将来如何如何,现在来说对我没什么吸引力,以上言论既代表作者观点,也代表本站观点,因为我是站长。

2014 年最热门的国人开发开源软件 TOP 100

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必。做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可。中国是开源不可忽视的力量。

而我们这个榜单也是从这些国人开发、主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问、收藏、下载等多个角度, 从而得出前 100 名最受欢迎的开源软件。我们所评选出来的软件并非同类型,尽管放在一起不是很科学,但我们仍希望通过我们的视角让大家对国内一些热门的开源软件有所了解。

下面是 TOP 100 的软件列表:

  1. JFinal

JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有 ruby、python、php 等动态语言的开发效率!

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/jfinal/jfinal
软件作者:@JFinal

  1. Dubbo

Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/alibaba/dubbo
软件作者:@dubbo

  1. 禅道

禅道是 第一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划 管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆 盖了项目管理的核心流程。

开发语言:PHP
授权协议:LGPL
源码下载:http://git.oschina.net/wwccss/zentaopms
软件作者:@春哥_禅道蝉知然之

  1. AFinal

Afinal 是一个 android 的 Sqlite ORM 和 IOC 框架。同时封装了android 中的 HTTP 框架,使其更加简单易用。Afinal 的宗旨是简洁,快速。约定大于配置的方式。尽量一行代码完成所有事情。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/fuhai/afinal
软件作者:@michaely

  1. ECharts

ECharts 开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特 性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/ecomfe/echarts
软件作者:@Kener-林峰

  1. Druid

Druid 是一个JDBC组件,它包括三部分: DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系;DruidDataSource 高效可管理的数据库连接池和 SQLParser。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/wenshao/druid
软件作者:@wenshao

  1. Goagent

GoAgent 是一个使用Python和Google Appengine SDK编写的代理软件,goagent的初衷是弥补gappproxy的不足。

开发语言:Python
授权协议:GPLv2
源码下载:http://git.oschina.net/goagent/goagent
软件作者:@phuslu

  1. Amze UI

Amaze UI 是中国首个开源 HTML5 跨屏前端框架。Amaze UI 是一个轻量级、Mobile first的前端框架, 基于开源社区流行前端框架编写。

开发语言:JavaScript/HTML/CSS
授权协议:MIT
源码下载:http://git.oschina.net/amazeui/amazeui
软件作者:@云适配

  1. fastjson

fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/wenshao/fastjson
软件作者:@wenshao

  1. CrossApp

CrossApp 是一款完全开源、免费、跨平台的移动应用开发引擎 。CrossApp 采用 C++ 开发(即将支持 JS 和 Lua 编写),可直接导出 iOS 和 Android 原生应用,拥有高性能,多控件,开发速度快的优势。

开发语言:C++
授权协议:MIT
源码下载:http://git.oschina.net/9miao/CrossApp
软件作者:@大鸡蛋

  1. xUtils

xUtils 最初源于 Afinal 框架,进行了大量重构,使得 xUtils 支持大文件上传,更全面的 http 请求协议支持(10 种谓词),拥有更加灵活的 ORM,更多的事件注解支持且不受混淆影响...

开发语言:Java
授权协议:Apache
源码下载:https://github.com/wyouflf/xUtils
软件作者:@wyouflf

  1. SpringSide

SpringSide 是以 Spring Framework 为核心的,Pragmatic 风格的 JavaEE 应用参考示例,是 JavaEE 世界中的主流技术选型,最佳实践的总结与演示。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/springside/springside4
软件作者:@江南白衣

  1. Cocos2d-x

Cocos2D-X 是全球知名的开源跨平台游戏引擎,易学易用,目前已经支持iOS、Android、Windows桌面、Mac OSX、Linux、BlackBerry、Windows Phone等平台。Cocos2d-JS统一了使用JS进行开发的开发体验,将HTML5引擎与JSB的API高度统一起来。

开发语言:C/C++/JavaScript/Lua
授权协议:MIT
源码下载:https://github.com/cocos2d/cocos2d-x
软件作者:@王哲Walzer

  1. TeamTalk

TeamTalk 是由蘑菇街开发的开源即时通讯解决方案,适用于中小型企业,提供可靠的消息传递机制;支持文字、图片、语音等富文本信息;文件收发等。

开发语言:Java
授权协议:Apache
源码下载:http://tt.mogu.io/home/download
软件作者:@TeamTalk

  1. Seafile

Seafile 是新一代的开源云存储软件。它提供更丰富的文件同步和管理功能,以及更好的数据隐私保护和群组协作功能。Seafile 支持 Mac、Linux、Windows 三个桌面平台,支持 Android 和 iOS 两个移动平台。

开发语言:C/Python
授权协议:GPLv3
源码下载:http://git.oschina.net/lins05/seafile
软件作者:@Seafile

  1. HP-Socket

HP-Socket 是一套通用的高性能 TCP/UDP 通信框架,包含服务端组件、客户端组件和Agent组件,广泛适用于各种不同应用场景的 TCP/UDP 通信系统,提供 C/C++、C#、Delphi、E(易语言)、Java、Python 等编程语言接口。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/ldcsaa/HP-Socket
软件作者:@伤神小怪兽

  1. IKAnalyzer

IK Analyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包。

开发语言:Java
授权协议:Apache
源码下载:https://code.google.com/p/ik-analyzer/
软件作者:@林良益

  1. zTree

zTree 是利用 JQuery 的核心代码,实现一套能完成大部分常用功能的 Tree 插件。zTree 兼容 IE、FireFox、Chrome 等浏览器,可以在一个页面内可同时生成多个 Tree 实例,支持 JSON 数据,支持一次性静态生成和 Ajax 异步加载两种方式。

开发语言:JavaScript
授权协议:MIT
源码下载:http://git.oschina.net/zTree/zTree_v3
软件作者:@zTree

  1. Koala

Koala(考拉)是一个面向Java开发者的开源免费开发平台,以领域驱动设计范 式为指导思想,以DDDLib框架为实现核心,提供KoalaUI前端框架、规范化项目管理工具OpenCI、在线领域建模工具、强大的组件库及可视化开发工具。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/openkoala/koala
软件作者:@Koala_考拉

  1. FastDFS

FastDFS 是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

开发语言:C/C++
授权协议:GPLv3
源码下载:https://code.google.com/p/fastdfs/
软件作者:@余庆

  1. DWZ

DWZ 富客户端框架 (jQuery RIA framework),是中国人自己开发的基于 jQuery 实现的 Ajax RIA 开源框架。设计目标是简单实用,快速开发,降低 AJAX 开发成本。

开发语言:JavaScript
授权协议:Apache
源码下载:https://code.google.com/p/dwz/
软件作者:@张慧华

  1. JECP

JECP 集合了easyui +jfinal +druid+freemarker,是非常方便开发的企业协同系统。

开发语言:Java
授权协议:GPL
源码下载:http://git.oschina.net/loyin/jecp
软件作者:@龙影

  1. Fastsocket

Fastsocket 是一个高扩展性的 Socket 以及 Linux 内核的底层网络实现。可以在多核机器上提供极好的性能,此外使用和维护还非常简单。目前该项目已经在新浪的生产环境中使用。该项目由清华大学和新浪网联合 组成的 Fastos 团队开发,该团队的使命是提升 Linux 内核的效率。

开发语言:C
授权协议:GPLv2
源码下载:https://github.com/fastos/fastsocket
软件作者:@Breezewoods

  1. Firefly

Firefly 是免费、开源、稳定、快速扩展、能 “热更新”的分布式游戏服务器端框架,采用Python编写,基于 Twisted 框架开发。它包括了开发框架和数据库缓存服务等各种游戏服务器基础服务,节省大量游戏开发的工作时间,真正做到让使用者把精力放在游戏玩法逻辑上。

开发语言:Python
授权协议:MIT
源码下载:http://git.oschina.net/9miao/firefly
软件作者:@大鸡蛋

  1. SequoiaDB

巨杉数据库 SequoiaDB 是企业级NoSQL分布式大数据库,主要应用在政府、电信、金融、电力和互联网等拥有海量业务数据的行业。SequoiaDB 数据库支持高达几千节点的集群规模,和 PB 级别的数据存储。

开发语言:C++
授权协议:AGPL
源码下载:http://git.oschina.net/wangzhonnew/SequoiaDB
软件作者:@wangzhonnew

  1. Pomelo

pomelo 是由网易开发的基于node.js开发的高性能、分布式游戏服务器框架, 也可作为高实时web应用框架。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/NetEase/pomelo
软件作者:@谢骋超

  1. webmagic

webmagic 是一个无须配置、便于二次开发的爬虫框架,它提供简单灵活的API,只需少量代码即可实现一个爬虫。webmagic 采用完全模块化的设计,功能覆盖整个爬虫的生命周期(链接提取、页面下载、内容抽取、持久化),支持多线程抓取,分布式抓取,并支持自动重试、自定义 UA/cookie等功能。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/flashsword20/webmagic
软件作者:@黄亿华

  1. Kity Minder

KityMinder 是百度FEX团队的f-cube小组(原UEditor小组)的又一力作。作为一款在线的脑图编辑工具,它有着很多Native编辑工具的交互体验。KM 与UE有着一样的宗旨,就是注重最终用户的使用体验。同时,它充分发挥了Web云存储的优势,可以直接将编辑中的脑图同步到云端。

开发语言:JavaScript/HTML/CSS
授权协议:MIT
源码下载:https://github.com/fex-team/kityminder
软件作者:@战毅

  1. ThinkPHP

ThinkPHP 是一个免费开源,快速、简单的面向对象的 轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。

开发语言:PHP
授权协议:Apache
源码下载:http://git.oschina.net/liu21st/thinkphp
软件作者:@流年

  1. DuiLib

DuiLib 是国内首个开源 的 DirectUI 界面库,开放,共享,惠众,共赢,遵循bsd协议,可以免费用于商业项目,目前支持Windows 32 、Window CE、Mobile等平台。Duilib 是一款强大的界面开发工具,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率。提供所见即所得 的开发工具UIDesigner。

开发语言:C++
授权协议:BSD
源码下载:https://github.com/duilib/duilib
软件作者:@wangchyz

  1. MySQL MTOP

MySQLMTOP 是一个由 Python+PHP 开发的开源 MySQL 企业监控系统。系统由Python实现多进程数据采集和告警,PHP实现WEB展示和管理。MySQL 服务器无需安装任何Agent,只需在监控WEB界面配置相关数据库信息,启动监控进程后,即可对上百台MySQL数据库的状态、连接数、QTS、 TPS、数据库流量、复制、性能慢查询等进行时时监控。

开发语言:Python
授权协议:GPL
源码下载:http://git.oschina.net/ruzuojun/MySQLMTOP
软件作者:@andrew_ru

  1. ccflow

驰骋工作流程引擎,工作流程管理系统:简称 ccflow,是来解决政府机关、企事业单位管理经营活动中的业务作业过程中规范化、合理化的软件管理系统。它以多样的终端(计算机、手机、短信、 PDA),把单位的内 外部的各个部门、人员有机的联系起来。它有效的解决了各个环节中的时间、人力、财物等资源的损耗。

开发语言:C#
授权协议:LGPL
源码下载:http://ccflow.org/Default.aspx
软件作者:@ccflow

  1. LiteIDE

LiteIDE 是一款开源、跨平台的轻量级Go语言集成开发环境(IDE)。

开发语言:C++/Go
授权协议:LGPL
源码下载:http://git.oschina.net/visualfc/liteide
软件作者:@七叶

  1. KodExplorer

KodExplorer 是款开源的Web在线文件管理、代码编辑器。它提供了类windows经典用户界面,一整套在线文件管理、文件预览、编辑、上传下 载、在线解压缩、音乐播放功能。让你直接在浏览器端实现web开发、源码文件预览、网站部署的同时拥有与本地操作一样方便、快捷、安全的体验。

开发语言:PHP
授权协议:GPL
源码下载:http://git.oschina.net/kalcaddle/KODExplorer
软件作者:@雾渺

  1. Beetl

Beetl 相对于其他java模板引擎,具有功能齐全,语法直观,性能超高,开发和维护模板有很好的体验。是新一代的模板引擎。

开发语言:Java
授权协议:BSD
源码下载:http://git.oschina.net/xiandafu/beetl2.0
软件作者:@闲.大赋

  1. CecOS

CecOS 是 OPENFANS 开源社区的企业云操作系统项目,以KVM系统管理程序和开放的管理平台为基础,针对服务器和桌面虚拟化提供了一套完整的虚拟化解决方案。

开发语言:Java/C/C++/Python
授权协议:GPL
源码下载:http://git.oschina.net/openfans.org/cecos.engine
软件作者:@量子云

  1. MT

MT 是手机腾讯网前端团队开发维护的一个专注于移动端的js模块管理框架。

开发语言:Java/JavaScript
授权协议:MIT
源码下载:http://git.oschina.net/luyongfugx/mt
软件作者:@卢勇福

  1. Smark

Smark 是个简单的编辑器,它在后台调用 pandoc 将当前编辑的 markdown 内容转化为 HTML,而后将 HTML 在 smark 中的浏览器中显示出来,依赖于 pandoc、Qt 4.8 和 MathJax。

开发语言:C/C++
授权协议:GPL
源码下载:http://git.oschina.net/elerao/Smark
软件作者:@elerao

  1. jsGen

jsGen 是用纯JavaScript编写的新一代开源社区网站系统,主要用于搭建SNS类型的专业社区,对客户端AngularJS 应用稍作修改也可变成多用户博客系统、论坛或者CMS内容管理系统。

开发语言:JavaScript
授权协议:MIT
源码下载:http://git.oschina.net/zensh/jsgen
软件作者:@zensh

  1. Snaker

Snaker 是一个基于Java的开源工作流引擎,适用于企业应用中常见的业务流程。本着轻量、简单、灵巧理念设计,定位于简单集成,多环境支持。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/yuqs/snakerflow
软件作者:@Dead_knight

  1. Cynthia

Cynthia 是个问题管理/BUG管理/任务管理/项目管理系统。Cynthia 提供了一个基于Web的、开源的、跨平台的软件项目管理和问题管理的解决方案。通过极大的灵活度,实现了特殊性和普遍性的统一。

开发语言:Java
授权协议:GPL
源码下载:http://git.oschina.net/cynthia/Cynthia
软件作者:@afrous

  1. 哎嘛

哎嘛是一款基于GPL授权协议的OSC开源中国(http://www.oschina.net/)第三方客户端。你可以在上面浏览OSC最新的资讯、博 客、动弹与200万开源中国用户进行互动交流。

开发语言:Java
授权协议:GPL
源码下载:http://git.oschina.net/tonlin/android-app
软件作者:@Tonlin

  1. S2JH

S2JH 集结最新主流时尚开源技术的面向企业级Web应用的基础开发框架,提供一个J2EE相关主流开源技术架构整合及一些企业应用基础通用功能和组件的设计实现的最佳实践和原型参考。

开发语言:Java
授权协议:LGPL
源码下载:http://git.oschina.net/xautlx/s2jh
软件作者:@S2JH

  1. KindEditor

KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用。

开发语言:JavaScript
授权协议:LGPL
源码下载:http://git.oschina.net/luolonghao/kindeditor
软件作者:@Roddy

  1. Redis Studio

Redis Studio 是Redis桌面客户端,支持Windows操作系统。 Redis Studio 提供更轻量级,更友好,更高效的Redis管理。

开发语言:C/C++
授权协议:BSD
源码下载:https://github.com/cinience/RedisStudio
软件作者:@cinience

  1. Tengine

Tengine 是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和 稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

开发语言:C
授权协议:BSD
源码下载:http://git.oschina.net/mirrors/tengine
软件作者:@shudu

  1. Egret

Egret Framework 是一款使用JavaScript(TypeScript)编写的HTML5开源免费游戏框架。Egret Framework的核心定位是开放,高效,优雅。基于它,你可以快速轻松地构建属于自己的HTML5移动游戏。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/egret-labs/egret-core
软件作者:未知

  1. JEECG

JEECG 是类似 Grails,Ruby on Rails 的快速开发框架,跟Grails相比,JEECG是一款轻量级的J2EE框架,采用主流SSH2,上手容易且封装了完善的完善的基础模块(用户 权限、报表集成、数据字典、查询生成器、代码生成器、常用共通封装)可直接投入项目开发。

开发语言:Java/JavaScript/HTML/CSS
授权协议:GPLv3
源码下载:http://git.oschina.net/jeecg/jeecg
软件作者:@jeecgscott

  1. SuperSocket

SuperSocket 是一个轻量级的可扩展的 Socket 开发框架,可用来构建一个服务器端 Socket 程序,而无需了解如何使用 Socket,如何维护Socket连接,Socket是如何工作的。

开发语言:C#
授权协议:Apache
源码下载:http://git.oschina.net/kerryjiang/supersocket
软件作者:@江振宇

  1. EasyHadoop

EasyHadoop 是一个 Hadoop 一键安装系统,方便大家更容易安装部署Hadoop软件。EasyHadoop 由前暴风影音数据团队修湘调研,向磊编写,以GPL协议进行开源。

开发语言:PHP/Python
授权协议:GPLv3
源码下载:https://github.com/xianglei/easyhadoop
软件作者:@Slaytanic

  1. dog-tunnel

狗洞是一个高速的 P2P 端口映射工具,同时支持socks5代理。UDP 底层基于开源库 KCP 重写,效率大大提高,在恶劣环境下优势明显,同时提供非p2p版本(lite版本)。

开发语言:Google Go
授权协议:MIT
源码下载:https://github.com/vzex/dog-tunnel
软件作者:@vzex

  1. RoadFlow

RoadFlow 是天知软件旗下基于.NET的集成工作流引擎的快速开发平台,由从事六年以上OA及工作流开发与实施的团队设计开发,该工作流平台已应用 于众多大型企事业单位。拥有全浏览器兼容的可视化流程设计器、表单设计器、基于角色的权限管理等系统开发必须功能,大大为您节省开发时间,是您开发OA、 CRM、HR等企事业各种应用管理系统和工作流系统的最佳基础平台。

开发语言:C#
授权协议:LGPL
源码下载:http://git.oschina.net/jiuyong/RoadFlow
软件作者:@RoadFlow

  1. Deepin

Deepin 是一个致力于为全球用户提供美观易用,安全可靠的Linux发行版。它不仅仅对最优秀的开源产品进行集成和配置,还开发了基于HTML5技术的全新桌面环境、系统设置中心、以及音乐播放器,视频播放器,软件中心等一系列面向日常使用的应用软件。

开发语言:无
授权协议:GPL
源码下载:http://sourceforge.net/projects/deepin/files
软件作者:@火耳

  1. jieba

"结巴"中文分词:做最好的Python中文分词组件 "Jieba" ,支持三种分词模式:精确模式,全模式,搜索引擎模式;支持繁体分词;支持自定义词典。

开发语言:Python
授权协议:MIT
源码下载:http://git.oschina.net/fxsjy/jieba
软件作者:@sunjunyi

  1. SSDB

SSDB 是一个 C/C++ 语言开发的高性能 NoSQL 数据库, 支持 zset(sorted set), map(hash), kv, list 等数据结构, 用来替代或者与 Redis 配合存储十亿级别列表的数据.

开发语言:C/C++
授权协议:BSD
源码下载:https://github.com/ideawu/ssdb
软件作者:@ideawu

  1. Velocity.js

Velocity.js 是velocity模板语法的javascript实现。Velocity 是基于Java的模板引擎,广泛应用在阿里集团各个子公司。Velocity模板适用于大量模板使用的场景,支持复杂的逻辑运算,包含 基本数据类型、变量赋值和函数等功能。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/shepherdwind/velocity.js
软件作者:@EwardSong

  1. CanTK

CanTK 是一套基于HTML5 Canvas的GUI系统,它提供了完整的控件库,事件分发系统,窗口管理系统和不同的平台的适配。

开发语言:JavaScript/HTML/CSS
授权协议:LGPL
源码下载:https://github.com/drawapp8
软件作者:@xianjim

  1. Spiderman

Spiderman 是一个基于微内核+插件式架构的网络蜘蛛,它的目标是通过简单的方法就能将复杂的目标网页信息抓取并解析为自己所需要的业务数据。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/l-weiwei/spiderman
软件作者:@自风

  1. Argo

Argo 是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求。经过长时间的运作与运行,证明Argo是一个可靠的、高效的web框架。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/58code/Argo
软件作者:58同城

  1. Gogs

Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 所有平台,包括 Linux、Mac OS X 以及 Windows。

开发语言:Google Go
授权协议:MIT
源码下载:http://git.oschina.net/Unknown/gogs
软件作者:@无闻

  1. Clouda

Clouda 是基于node.js的Webapp开发框架,在使用Clouda时需要安装node.js和MongoDB。Clouda 是百度推出的一款面向资深开发者的WebApp开发框架。

开发语言:JavaScriipt
授权协议:MIT
源码下载:https://github.com/Clouda-team
软件作者:百度

  1. Codis

Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没有明显的区别 (不支持的命令列表), 上层应用可以像使用单机的 Redis 一样使用, Codis 底层会处理请求的转发, 不停机的数据迁移等工作, 所有后边的一切事情, 对于前面的客户端来说是透明的, 可以简单的认为后边连接的是一个内存无限大的 Redis 服务.

开发语言:C/C++/Google Go
授权协议:MIT
源码下载:https://github.com/wandoulabs/codis
软件作者:@goroutine @c4pt0r @spinlock9

  1. beego

beego 是一个用Go开发的应用框架,思路来自于tornado,路由设计来源于sinatra,支持如下特性:MVC,REST,智能路由,日志调试,配置管理,模板自动渲染,layout设计,中间件插入逻辑,方便的JSON/XML服务。

开发语言:Google Go
授权协议:Apache
源码下载:https://github.com/astaxie/beego
软件作者:@astaxie

  1. icomet

icomet 是一个使用 C++ 语言开发的支持百万并发连接的 comet 服务器, 使用了 libevent 网络库. 支持并发连接数高, 内存占用少, 性能优越. 支持的浏览器和操作系统平台包括: Safari(iOS, Mac), Firefox/Chrome(Windows, Mac), IE6+.

开发语言:Google Go
授权协议:BSD
源码下载:https://github.com/ideawu/icomet
软件作者:@ideawu

  1. heX

heX 是网易有道搜索部门开发的一个允许你采用前端技术(HTML,CSS,JavaScript)开发桌面应用软件的跨平台解决方案,基于HTML5 + node.js,类似appjs。是你开发桌面应用的一种新的选择,意在解决传统桌面应用开发中繁琐的UI和交互开发工作,使其变的简单而高效。特别适合重UI,重交互的桌面应用软件。

开发语言:JavaScript
授权协议:BSD
源码下载:https://github.com/netease-youdao/hex
软件作者:@luyuan

  1. WNMP

WNMP 是Windows下的绿色Nginx+Mysql+PHP环境集成套件包(目前仅支持32系统)。解压后点击 start.bat 启动,即可得到一个Nginx + MySQL + PHP 环境。然后就可以直接安装 Discuz!, PHPWind, DeDeCMS, WordPress 等程序。是PHP程序员的必备工具。

开发语言:PHP
授权协议:GPL
源码下载:http://www.75hh.com/wnmp/
软件作者:@韦泽

  1. StartBBS

StartBBS(起点开源社区系统)是一个基于PHP+MySQL开发的新型社区系统,她轻量小巧, 简单易用,强大高效的开源论坛系统。又简称”SB(烧饼)”。

开发语言:PHP
授权协议:GPLv3
源码下载:http://git.oschina.net/startbbs/startbbs
软件作者:@startbbs

  1. ThinkOX

ThinkOX 定位: 弥补OneThink对前台支持的不足,增加通用模块,让OneThink更能适合快速构建需要用户中心的应用。ThinkOX 具备以下模块:微博、论坛、活动、群组、商城、资讯、专辑。

开发语言:PHP
授权协议:自定义
源码下载:http://git.oschina.net/caipeichao/ThinkOX
软件作者:@奕潇

  1. H5Slides

H5Slides 是基于HTML5技术的幻灯片编辑、播放、控制的全套方案。H5Slides希望通过HTML5的技术,成为用户编辑、播放、控制幻灯片这一系列行为的全套方案的提供者。幻灯演示将会变得更自如,更轻便,更开放,更易于分享。

开发语言:JavaScript
授权协议:LGPL
源码下载:https://github.com/Jinjiang/h5slides
软件作者:@勾三股四

  1. ThinkCMF

ThinkCMF 是一款基于PHP+MYSQL开发的中文内容管理框架。ThinkCMF提出灵活的应用机制,框架自身提供基础的管理功能,而开发者可以根据自身的需求以应用的形式进行扩展。

开发语言:PHP/JavaScript
授权协议:Apache
源码下载:http://git.oschina.net/thinkcmf/ThinkCMF
软件作者:@ThinkCMF

  1. JFinal Extensions

Jfinal-ext 是对java极速web框架 jfinal 的一个扩充,主要利用jfinal微内核高扩展的特性扩展常用的实用功能和集成各种第三方框架,简化开发者的学习应用成本,为您节约更多时间,去陪恋人、家人和朋友 。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/zhouleib1412/jfinal-ext
软件作者:@绝望的八皮

  1. RunJS

RunJS 是一个在线的 HTML、Javascript、CSS 等 web 前端代码的编辑分享平台,拥有实时预览、高亮显示、代码格式化等功能,我们提供 OSChina、微博、qq、github、google、yahoo、hotmail 这七种登录方式。

开发语言:Java/JavaScript
授权协议:GPLv3
源码下载:http://git.oschina.net/oschina/RunJS
软件作者:OSChina

  1. Nutz

Nutz 是 Java 程序员相对于 SSH 的另一个选择,主要特性是:体积小(1M+),功能强大(DAO,MVC,JSON,IOC 各种帮助函数),无依赖,有优秀的文档。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/nutzam/nutz
软件作者:@三个字儿

  1. OceanBase

OceanBase 是一个支持海量数据的高性能分布式数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务,由淘宝核心系统研发部、运维、DBA、广告、应用研发等部门共同完成。

开发语言:C/C++
授权协议:GPLv2
源码下载:http://code.taobao.org/p/OceanBase/src/
软件作者:阿里巴巴

  1. Jingle

Jingle UI 是一个基于 html5、css3 开发轻量级的移动 webapp 框架,提供一些基本交互方式,常用的组件(scroll,actionsheet,sidemenu,toggle,push2refresh......),帮助您更方便的开发移动应用。

开发语言:JavaScript/HTML/CSS
授权协议:MIT
源码下载:https://github.com/shixy/Jingle
软件作者:@问题石

  1. G4Studio

?G4Studio 行业应用二次快速开发平台基于JavaEE技术体系,面向中小软件企业。以“标准功能可复用、通用模块可配置、行业需求快速开发、异构系统无缝集成”为目标,为中小软件开发团队提供强有力的一站式解决方案。

开发语言:Java
授权协议:GPLv3
源码下载:https://github.com/xiongchun/g4studio
软件作者:@大理阿黑哥

  1. weiphp

weiphp 是一个开源,高效,简洁的微信开发平台,它是基于 oneThink 这个简单而强大的内容管理框架实现的。weiphp的目的是最大化的简化微信开发的流程,使用开发者能把最好的精力放到微信具体业务开发,并能以最快的时间完成。

开发语言:PHP
授权协议:Apache
源码下载:http://www.weiphp.cn/
软件作者:@weiphp

  1. PHP Yaf

Yaf 是一个 C 语言编写的 PHP 框架,Yaf 的特点:用C语言开发的PHP框架, 相比原生的PHP, 几乎不会带来额外的性能开销。所有的框架类,不需要编译,在PHP启动的时候加载,并常驻内存。

开发语言:C/PHP
授权协议:PHP License 3.01
源码下载:https://github.com/laruence/php-yaf
软件作者:@雪候鸟

  1. SmPSS

SmPSS 是基于 SlightPHP 框架的超市进销存管理系统(SmPSS)(php+mysql)。

开发语言:PHP
授权协议:BSD
源码下载:https://code.google.com/p/smpss/
软件作者:@齐迹

  1. dhroid

dhroid 是基于android 平台,极速开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展。dhroid 使你更快,更好的开发商业级别应用。

开发语言:Java
授权协议:GPL
源码下载:http://git.oschina.net/tengzhinei/dhroid
软件作者:@景颢

  1. Simditor

Simditor 是团队协作工具 Tower 使用的富文本编辑器。相比传统的编辑器它的特点是:功能精简,加载快速;输出格式化的标准 HTML;每一个功能都有非常优秀的使用体验。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/mycolorway/simditor
软件作者:@kshift

  1. Ejoy2D

Ejoy2D 是一款图形引擎、基于C和Lua开发,底层是一个十分简单的核心层,基本上只负担绘制工作,上层语言是Lua。Ejoy2D是国内简悦 (EJOY)游戏公司所开发的一款游戏图形引擎,旨在帮助开发人员轻松地嵌入到游戏引擎中,方便开发者定制自己所需的功能。

开发语言:Lua
授权协议:MIT
源码下载:https://github.com/cloudwu/ejoy2d
软件作者:@云风

  1. NPOI

NPOI 是 POI 项目的 .NET 版本。POI 是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。

开发语言:C#
授权协议:Apache
源码下载:http://npoi.codeplex.com/
软件作者:@找事的小狐狸

  1. Tsar

Tsar 是淘宝的采集工具,主要用来收集服务器的系统信息(如cpu,io,mem,tcp等)以及应用数据(如squid haproxy nginx等),tsar支持实时查看和历史查看,方便了解应用和服务器的信息!

开发语言:C
授权协议:GPLv2
源码下载:https://github.com/alibaba/tsar
软件作者:@tbkongjian

  1. Wide

Wide 是基于 Web 的团队 Golang IDE。特性:安全可靠:项目源代码实时保存在服务器上;统一环境:服务器统一配置开发环境;开箱即用:5 分钟搭建服务器;开发者打开浏览器即可开发、调试;版本控制。

开发语言:Google Go
授权协议:Apache
源码下载:http://git.oschina.net/dl88250/wide
软件作者:@88250

  1. Fiberized.IO

Fiberized.IO 是一个基于 Fiber 和 Async I/O 的通用 C++ 网络库。在上层,Fiberized.IO 提供一个兼容 C++11 thread 和 iostream 的“阻塞式”API;在底层,Fiberized.IO 通过将阻塞式 IO 映射为异步 IO 和 kernel/userland 混合调度的 Fiber,在最大化程序的运行效率的同时保持用户的程序清晰简单易于理解。

开发语言:C++
授权协议:BSD
源码下载:http://git.oschina.net/windoze/fibio
软件作者:@Windoze

  1. MuPlayer

MuPlayer 是一款跨平台、轻量级的音频播放解决方案,是百度@音乐前端团队开发维护的浏览端音频播放内核,它基于HTML5 Audio及Flash音频技术,已在百度音乐多个线上产品线中应用,具备很强的灵活性和稳定性。

开发语言:JavaScript
授权协议:BSD
源码下载:https://github.com/Baidu-Music-FE/muplayer
软件作者:@enimo

  1. fastweixin

fastweixin 是快速搭建微信公众平台服务器。简单封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等 1.0版本提供了一个基于springmvc的控制器,集成了微信服务器绑定、监听所有类型消息的方法。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/pyinjava/fastweixin
软件作者:@愚_者

  1. ONES

ONES 不是 ONS,基于AngularJS + ThnkPHP开发的企业管理系统平台,名字可以理解为ONES is a Niubility ERP System 或者 ONES Notonly an ERP System。以基础核心+扩展应用模式适配不同场景下的需求。

开发语言:PHP/JavaScript
授权协议:Apache
源码下载:http://git.oschina.net/xiaolan/ones
软件作者:@老法海

  1. LVS

LVS 是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

开发语言:C
授权协议:GPL
源码下载:http://www.linuxvirtualserver.org/software/index.html
软件作者:章文嵩

  1. KJFrameForAndroid

KJFrameForAndroid 又叫KJLibrary,是一个android的orm 和 ioc 框架。同时封装了android中的Bitmap与Http操作的框架,使其更加简单易用;KJFrameForAndroid的设计思想是通过封装 Android原生SDK中复杂的复杂操作而达到简化Android应用级开发,最终实现快速而又安全的开发APP。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/kymjs/KJFrameForAndroid
软件作者:@张涛OSC

  1. OSAdmin

OSAdmin 是 PHP 开源管理后台。OSAdmin 是一套具备基础功能的管理后台,在这基础之上进行后台开发,简洁高效,事半功倍!程序架构很简单,Html5+Smarty+Medoo+Bootstrap+bootbox。

开发语言:PHP
授权协议:GPL
源码下载:https://github.com/somewhereYu/OSAdmin
软件作者:@somewhereyu

  1. Ueditor

UEditor 是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/fex-team/ueditor
软件作者:@战毅

  1. RoboBinding

RoboBinding 是一个实现了数据绑定 Presentation Model(MVVM) 模式的Android开源框架。

开发语言:Java
授权协议:Apache
源码下载:https://github.com/RoboBinding/RoboBinding
软件作者:@cheng112

  1. LaneWeChat

LanWeChat是微信PHP开发框架,快速开发微信公众号,以第三方代码包的形式引入即可。

开发语言:PHP
授权协议:GPLv2
源码下载:http://git.oschina.net/lane/LaneWeChat
软件作者:@李轩Lane

  1. Ekho

Ekho(余音)是一个把文字转换成声音的软件。它目前支持粤语、普通话(国语)、诏安客语、藏语、雅言(中国古代通用语)和韩语(试验中),英文则通过Festival间接实现。支持Linux、Windows、Android。

开发语言:C/C++
授权协议:GPLv2
源码下载:http://www.eguidedog.net/ekho.php
软件作者:@黄冠能

  1. RegularJS

regular 在最终实现上采取了angular的数据更新策略(但是提取了表达式的依赖关系以便在Object.observe正式到来时切换到脏检 查+observe的形式)提倡极致的声明式和裸数据操作,依赖于基于字符串的模板描述结构结合更规范性的类式继承的组件体系来定义数据层的业务逻辑。

开发语言:JavaScript
授权协议:MIT
源码下载:https://github.com/regularjs/regular
软件作者:@zhenghaibo

  1. Atlas

Atlas 是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量bug,添加了很多功能特性。

开发语言:C
授权协议:GPLv2
源码下载:https://github.com/Qihoo360/Atlas
软件作者:@Qihoo360

  1. ThinkCSS

TC (”ThinkCSS”) 是一个 (X)HTML/CSS 框架 ,它的目的是减少你的css开发时间。它提供一个可靠的css基础去创建你的项目,能够用于网站的快速设计,通过重设和重建浏览器标准,可以让每个网站防 止枯燥的跨浏览器兼容性测试。

开发语言:JavaScript
授权协议:Apache
源码下载:https://code.google.com/p/thinkcss/
软件作者:未知

  1. jcseg

Jcseg[d??'ke's?] 是使用Java开发的一个开源中文分词器,使用流行的mmseg算法实现,并且提供了最高版本的lucene, solr, elasticsearch(New)的分词接口。

开发语言:Java
授权协议:Apache
源码下载:http://git.oschina.net/lionsoul/jcseg
软件作者:@狮子的魂

PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]

1、获取当前时间方法date()

很简单,这就是获取时间的方法,格式为:date($format, $timestamp),format为格式、timestamp为时间戳--可填参数。

2、获取时间戳方法time()、strtotime()

这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime($time, $now)为将时间格式转为时间戳,$time为必填。清楚了这个,想了解更多,请继续往下看。

3、 date($format)用法

比如:
echo date('Y-m-d') ,输出结果:2012-03-22
echo date('Y-m-d H:i:s'),输出结果:2012-03-22 23:00:00
echo date('Y-m-d', time()),输出结果:2012-03-22 23:00:00(结果同上,只是多了一个时间戳参数)(时间戳转换为日期格式的方法)
echo date('Y').'年'.date('m').'月'.date('d').'日',输出结果:2012年3月22日
举例就这几个,只是格式的变通而已,下面是格式中各个字母的含义:
/**************格式中可使用字母的含义**************/
a - "am" 或是 "pm"
A - "AM" 或是 "PM"
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
D - 星期几,三个英文字母; 如: "Fri"
F - 月份,英文全名; 如: "January"
h - 12 小时制的小时; 如: "01" 至 "12"
H - 24 小时制的小时; 如: "00" 至 "23"
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
i - 分钟; 如: "00" 至 "59"
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
l - 星期几,英文全名; 如: "Friday"
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
M - 月份,三个英文字母; 如: "Jan"
s - 秒; 如: "00" 至 "59"
S - 字尾加英文序数,二个英文字母; 如: "th","nd"
t - 指定月份的天数; 如: "28" 至 "31"
U - 总秒数
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
Y - 年,四位数字; 如: "1999"
y - 年,二位数字; 如: "99"
z - 一年中的第几天; 如: "0" 至 "365"

4、strtotime($time)用法

比如:
echo strtotime('2012-03-22'),输出结果:1332427715(此处结果为随便写的,仅作说明使用)
echo strtotime(date('Y-d-m')),输出结果:(结合date(),结果同上)(时间日期转换为时间戳)
strtotime()还有个很强大的用法,参数可加入对于数字的操作、年月日周英文字符,示例如下:
echo date('Y-m-d H:i:s',strtotime('+1 day')),输出结果:2012-03-23 23:30:33(会发现输出明天此时的时间)
echo date('Y-m-d H:i:s',strtotime('-1 day')),输出结果:2012-03-21 23:30:33(昨天此时的时间)
echo date('Y-m-d H:i:s',strtotime('+1 week')),输出结果:2012-03-29 23:30:33(下个星期此时的时间)
echo date('Y-m-d H:i:s',strtotime('next Thursday')),输出结果:2012-03-29 00:00:00(下个星期四此时的时间)
echo date('Y-m-d H:i:s',strtotime('last Thursday')),输出结果:2012-03-15 00:00:00(上个星期四此时的时间)
等等,自己去变通研究吧,strtotime()方法可以通过英文文本的控制Unix时间戳的显示,而得到需要的时间日期格式。

5、php获取当前时间的毫秒数

php本身没有提供返回毫秒数的函数,但提供了microtime()方法,它会返回一个Array,包含两个元素:一个是秒数、一个是小数表示的毫秒数,我们可以通过此方法获取返回毫秒数,方法如下:
function getMillisecond() {
list($s1, $s2) = explode(' ', microtime());
return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);
}

6、获取当前时间相差6小时解决方法

有些朋友,获取的时间与当前系统时间相差6个小时,这是因为时区设置问题,只要将之设为上海时间即可。方法如下:
1.在php.ini中找到date.timezone,将它的值改成 Asia/Shanghai,即 date.timezone = Asia/Shanghai
2.在程序开始时添加 date_default_timezone_set('Asia/Shanghai')即可。
详细设置解读见:PHP通过date()函数取得时间错误
啰嗦的挺多的,就总结这么些有关 php获取当前时间、时间戳、毫秒数、时间相差的各种写法及解决方法,有任何疑问,欢迎留言提出,一同讨论。

/* * @Author: your name * @Date: 2016-09-06 00:00:00 * @LastEditTime: 2020-03-17 18:29:35 * @LastEditors: Please set LastEditors * @Description: In User Settings Edit * @FilePath: \htdocs\usr\themes\default\footer.php */