Quantcast
Channel: OSCHINA 社区最新新闻
Viewing all 44834 articles
Browse latest View live

Spring Cloud Greenwich.M3 版本发布

$
0
0

Spring Cloud Function 的第三个 Milestone 3 已发布,该版本的各个模块现可在 Spring Milestone 存储库中使用。

主要更改

此版本与 Spring Boot 2.1.0.RELEASE 兼容,并已对 Java 11 兼容性进行了更改。

Spring Cloud Bus

  • Fixed a compatiblity issue with Spring Cloud Stream.

Spring Cloud Commons

  • Added instanceId to ServiceInstance interface. Also added a ReactiveLoadBalancerinterface and implementation using Reactor.

Spring Cloud Config

  • Various bug fixes and small enhancements.

Spring Cloud Contract

  • Support was added for WebTestClient and JUnit 5 extensions.

Spring Cloud Consul

  • Bug fixes.

Spring Cloud Function

  • Minor enhacements and bug fixes.

Spring Cloud Gateway

  • Added a rewrite response header filter and bug fixes.

Spring Cloud Gcp

  • Minor enhacements and bug fixes.

Spring Cloud Kubernetes

  • ServiceInstance metadata can now be configured to come from Kubernetes Labels, Annotations and Ports. Some other smal enhacements and bug fixes.

Spring Cloud Netflix

  • Various version upgrades.

Spring Cloud Openfeign

  • Added missing configuration metadata.

Spring Cloud Sleuth

  • Various improvements to Reactor and Reactor Netty instrumentation and other minor enhancements.

Spring Cloud Stream

  • Minor enhacements and bug fixes.

Spring Cloud Task

  • Now enabled thru auto-configuration.

Spring Cloud Vault

  • Adds support for Azure and GCP authentication and some dependency updates.

以下模块已作为 Greenwich.M3 的一部分进行了更新:

MODULEVERSIONISSUES
Spring CloudGreenwich.M3
Spring Cloud Aws2.0.1.RELEASE(issues)
Spring Cloud Bus2.1.0.M2(issues)
Spring Cloud Cloudfoundry2.1.0.M1
Spring Cloud Commons2.1.0.M2(issues)
Spring Cloud Config2.1.0.M3(issues)
Spring Cloud Contract2.1.0.M2(issues)
Spring Cloud Consul2.1.0.M2(issues)
Spring Cloud Function2.0.0.RC2(issues)
Spring Cloud Gateway2.1.0.M3(issues)
Spring Cloud Gcp1.1.0.M3
Spring Cloud Kubernetes1.0.0.M2(issues)
Spring Cloud Netflix2.1.0.M3(issues)
Spring Cloud Openfeign2.1.0.M2
Spring Cloud Security2.1.0.M1
Spring Cloud Sleuth2.1.0.M2(issues)
Spring Cloud StreamFishtown.RC2Blog post
Spring Cloud Task2.1.0.M1(issues)
Spring Cloud Vault2.1.0.M2(issues)
Spring Cloud Zookeeper2.1.0.M1

Maven (dependency management only):

<repositories>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>http://repo.spring.io/milestone</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Greenwich.M3</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
    ...
</dependencies>

or with Gradle:

buildscript {
    dependencies {
        classpath "io.spring.gradle:dependency-management-plugin:1.0.2.RELEASE"
    }
}

repositories {
    maven {
        url 'http://repo.spring.io/milestone'
    }
}

apply plugin: "io.spring.dependency-management"

dependencyManagement {
    imports {
        mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Greenwich.M3'
    }
}

dependencies {
    compile 'org.springframework.cloud:spring-cloud-starter-config'
    compile 'org.springframework.cloud:spring-cloud-starter-netflix-eureka-client'
    ...
}

Apache RocketMQ 4.3.2 发布,分布式消息系统

$
0
0

Apache RocketMQ 4.3.2 已发布,RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。更新如下:

Improvement

  • [ISSUE-411] - Fixed ClassCastException when get the instance of the store.

  • [ISSUE-461] - Purge filterserv related code in client.

  • [ISSUE-478] - Polish async send message sample.

Bug

  • [ISSUE-406] - Fixed the NPE issue occurred when getting the storehost using admin tool.

  • [ISSUE-433] - Fixed the issue that Integration-test can not be executed when run "mvn clean install".

  • [ISSUE-439] - Fixed the issue that ConsumeMessageCommand -g setting.

  • [ISSUE-447] - Fix the issue that checkLocalTransaction method does not take effect.

  • [ISSUE-490] - Fix the issue that testGetLocalInetAddress failure on some versions of the server.

下载地址:

Redisson 3.9.1 和 2.14.1 发布,Redis 客户端

$
0
0

Redisson 3.9.1 和 2.14.1 已发布,Redisson 是架设在 Redis 基础上的一个 Java 驻内存数据网格(In-Memory Data Grid)。

Redisson 在基于 NIO 的 Netty 框架上,充分利用了 Redis 键值数据库提供的一系列优势,在 Java 实用工具包中常用接口的基础上,为使用者提供了一系列具有分布式特性的常用工具类。使得原本作为协调单机多线程并发程序的工具包获得了协调分布式多机多线程并发系统的能力,大大降低了设计和研发大规模分布式系统的难度。同时结合各富特色的分布式服务,更进一步简化了分布式环境中程序相互之间的协作。

两个版本的更新内容相同,包括:

  • Feature - takeFirstElements and takeLastElements streaming methods added to RBlockingDequeRx

  • Feature - RBlockingQueueRx.takeElements streaming method added

  • Feature - RTopicRx.getMessages streaming method added

  • Feature - async methods for listener removal added to RTopic object

  • Feature - RxJava2 method call cancellation support added

  • Feature - RObject.getSizeInMemory method added

  • Feature - RTopic.countListeners method added

  • Feature - takeFirstElements and takeLastElements added to RScoredSortedSetReactive and RScoredSortedSetRxobjects

  • Feature - takeFirst and takeLast methods added to RScoredSortedSet object

  • Feature - readGroup method variations added to RStream object

  • Feature - removetrimfastClaimremoveGroupremoveConsumerupdateGroupMessageId methods added to RStream object

  • Improvement - JCache performance optimization up to 2x times

  • Improvement - Redis url validation

  • Fixed - Exception serialization by Jackson codec

  • Fixed - DNS channels aren't pooled

  • Fixed - RStream commands don't work with Redis 5.0.1 version

  • Fixed - task scheduled with cron pattern isn't executed with single worker

  • Fixed - Spring Boot Starter doesn't convert properly list of sentinel addresses

  • Fixed - RTopic and all objects based on it stop work properly if Subscribe timeout occured

  • Fixed - JDK 1.6 compatibility for 2.x version

  • Fixed - IPv6 addresses format support for Sentinel mode (thanks to Mikhail Surin)

  • Fixed - null value handling for Spring Boot Starter's timeoutValue setting (Thanks to junwu215177)

  • Fixed - OOM during RLocalCachedMap.fastPut method invocation and Reference based EvictionPolicy is used

  • Fixed - exception in CommandDecoder while using PubSub with ping

  • Fixed - RTopic.removeAllListeners invocation leads to PubSub connections leak

  • Fixed - all methods of RSemaphoreRx and RAtomicDoubleRx objects should return Flowable object

  • Fixed - Redisson.createRx method should return RedissonRxClient

下载地址:

MariaDB 10.3.11 发布,流行的 MySQL 分支版本

$
0
0

MariaDB 10.3.11 已发布,更新内容如下:

下载地址:

社区论坛平台 Sym 3.4.4 发布,加入审计日志

$
0
0

Sym

新增特性

  • 786 管理功能操作日志

后台所有的管理功能都加入了审计日志,&ldquo;谁在什么时间对什么数据进行了什么维护&rdquo;,一目了然。

优化改进

  • 803 支持 webm 视频播放

  • 804 更新帖子、回帖时艾特改进

  • 807 校验 forward 页面来源

如果你正在寻找一个 Java 实现的社区论坛系统,请一定不要错过 Sym,细节请浏览功能点脑图

Vardump 更新,支持打印各种 Java 数据结构,支持嵌套

$
0
0

1、更新支持同时打印http请求的request的cookies,session,parameter。

//请求的url为http://localhost/?a=1&b=2&b=123
@RequestMapping("/index")
public String index(HttpServletRequest request) {
	Vardump.print(request);		
	return "index/index";
}

打印的效果如下

request(
    ParameterMap(
        {(string)"a" (length=1)=>
                String[](
                    [0]=>(string)"1" (length=1)
                )
        }
        {(string)"b" (length=1)=>
                String[](
                    [0]=>(string)"2" (length=1)
                    [1]=>(string)"123" (length=3)
                )
        }
    )
    cookies(
        (string)"{(string)"__guid"(length=6)=>(string)111872281.412025206174933600.1541334635043.79(length=45)}" (length=94)
        (string)"{(string)"JSESSIONID"(length=10)=>(string)EBD3C517709D3A58439311546492EEC9(length=32)}" (length=86)
        (string)"{(string)"monitor_count"(length=13)=>(string)63(length=2)}" (length=58)
    )
    session(
        {(string)"realName"(length=8)=>(string)"系统管理员" (length=5)}
        {(string)"img"(length=3)=>(int)0}
        {(string)"aname"(length=5)=>(string)"admin" (length=5)}
        {(string)"mobile"(length=6)=>(string)"13818135252" (length=11)}
        {(string)"dname"(length=5)=>(string)"行政部" (length=3)}
        {(string)"rid"(length=3)=>
                HashSet(
                    [0]=>(int)1
                )
        }
        {(string)"aid"(length=3)=>(int)23}
        {(string)"did"(length=3)=>(int)3}
        {(string)"email"(length=5)=>(string)"admin@lcfms.cn" (length=14)}
        {(string)"status"(length=6)=>(int)1}
    )
)

2、支持打印各种继承了Map与Collection接口的数据类型,比如Json

JSONObject object=JSONObject.fromObject("{\"employees\":[{\"firstName\":\"Bill\",\"lastName\":\"Gates\"},{\"firstName\":\"George\",\"lastName\":\"Bush\"},{\"firstName\":\"Thomas\",\"lastName\":\"Carter\"}]}");
Vardump.print(object);

打印结果如下

JSONObject(
    {(string)"employees" (length=9)=>
                JSONArray(
                    [0]=>
                        JSONObject(
                            {(string)"firstName" (length=9)=>(string)"Bill" (length=4)}
                            {(string)"lastName" (length=8)=>(string)"Gates" (length=5)}
                        )
                    [1]=>
                        JSONObject(
                            {(string)"firstName" (length=9)=>(string)"George" (length=6)}
                            {(string)"lastName" (length=8)=>(string)"Bush" (length=4)}
                        )
                    [2]=>
                        JSONObject(
                            {(string)"firstName" (length=9)=>(string)"Thomas" (length=6)}
                            {(string)"lastName" (length=8)=>(string)"Carter" (length=6)}
                        )
                )
    }
)

3、处理打印null报错的异常。

4、更新使用文档

CAS 5.3.6 发布,企业级开源单点登录解决方案

JPress v1.0-rc.8 发布,新增微信和 QQ 登录功能

$
0
0

JPress,一个类似WordPress的软件,使用Java开发,支持WordPress一键搬家功能。

JPress v1.0-rc.8 主要更新如下:

  • 新增:Markdown编辑器支持渲染Table ( @ruibaby )

  • 新增:微信登录 和 qq登录的支持

  • 新增:新用户注册时,手机短信的验证功能

  • 新增:用新用户评论文章后,开启短信通知管理员的功能

  • 新增:html2wxml api 接口,用于服务微信小程序

  • 新增:Index 页面,支持样式设置的功能

  • 新增:用户中心的邮箱自主激活的功能

  • 新增:用户注册账号,发送邮件激活的功能

  • 新增:#articles() 指令添加可以指定 style 的支持

  • 优化:#categoryArticles() 指令,添加输出当前category的支持

  • 优化:#articlePage() 指令增加可以指定当前分类的参数( @zhanex )

  • 优化:linesOption 指令,防止读取分割出错的问题

  • 优化:后台菜单功能的文字提示错误

  • 修复:模板编辑目录为空时,页面不显示当前目录的问题 ( @rocsky )

  • 修复:calmlog模板,文章详情页浏览量和评论数据错误的问题。( @whoismy8023 )

  • 修复:当未设置权限,登录后台的用户无法退出的问题( @Tom.Lin )

  • 修复:#article() 指令无法读取文章内容的问题

  • 修复:微信小程序设置后不起作用的问题

  • 修复:类名的单词拼写错误的问题

  • 修复:阿里云OSS附件同步时,在window下出现路径错误的问题

  • 修复:#page() 无法使用的问题

  • 修复:page 模块,当用户不输入 slug 的时候可能出现无法保存的问题

短信有邮件通知管理员功能如下图:

同时新增一套收费企业模板,效果图如下:

另外JPress正在参加开源中国的最受欢迎的开源软件评选活动,你一定能要给JPress都一票,投票地址:https://www.oschina.net/project/top_cn_2018

在参加开源软件评选的所有项目里,好像JPress是唯一一个开源产品,而不是一个开源框架。你一定要给JPress一票。

JPress官方网站:http://www.jpress.io
JPress开源地址:http://gitee.com/fuhai/jpre


NutzWk 5.1.1 发布,Java 微服务分布式开发框架

$
0
0

NutzWk 5.1.1 更新内容:

  • 修复Vue版本中角色管理,不能分配新增的菜单的问题;

  • 提升@SLog注解功能,在控制类方法前可通过变量名获取对象。

演示地址(Vue版本): https://nutzwk.wizzer.cn

NutzWk 是 Java 微服务分布式开发框架,采用nutzboot、nutz、dubbo、redis、zookeeper、shiro、quartz、beetl等开源技术的微服务分布式版本,自带系统管理、简易CMS、微信模块、定时任务、服务API演示等功能,目前已全面应用于各类商业项目中。

Nacos 发布 0.5.0 版本,轻松玩转动态 DNS 服务

$
0
0

阿里巴巴微服务开源项目Nacos于近期发布v0.5.0版本,该版本主要包括了DNS-basedService Discovery,对Java 11的支持,持续优化Nacos产品用户体验,更深度的与Spring Cloud体系的网关集成等方面做了演进。

发布 DNS-F

为了进一步降低微服务多语言生态、异构系统、Kubernetes体系的服务注册与发现的实现成本,Nacosv0.5.0 发布了一款DNS-F客户端,以便支持将注册在Nacos上的服务以域名的方式暴露端点,让三方应用方便的查阅及发现。


不同于Nacos的Client SDK服务发现模式,DNS-F 提供独立于应用进程的Agent, 通过拦截应用的域名解析请求,让Nacos对应用提供域名数据动态推送更新、健康检查、异常节点下线、以及统一的域名管理视图等服务。

Nacos提供基于DNS 协议的服务发现能力,旨在帮助用户解决三个方面的问题:

  • Kubernetes体系的服务发现

毫无疑问,Kubernetes体系的服务发现方案一直都是基于DNS的,Nacos DNS-F目前开源提供的版本,是在CoreDNS的基础上提供了Nacos的plugin nacos-coredns-plugin,这样打通了CoreDNS与Nacos服务,这种实现方式为未来进一步打通Kubernetes集群内部的服务发现与应用服务发现(如SpringCloud)提供了通路,为Nacos在未来帮助应用以统一的视图管理Kubernetes内部和应用自身的服务及域名提供了基础,从而帮助用户简化基于kubernetes体系的微服务平台的构建与管理。

  • 服务发现迄今仍然没有标准协议

到目前为止,市面上的服务发现的解决方案有很多,仅在JavaSpring生态中,就有Zookeeper,Consul,Eureka,Nacos等解决方案,更不用说在其它的语言和框架中,Nacos通过提供DNS-F,可以让用户更容易地实现以DNS协议为基础的服务发现(DNS-SD),而DNS协议是一个成熟的标准协议,可以有效的帮助用户消除耦合到厂商私有服务发现API上的风险。

  • 异构及多语言系统的服务发现

在一个中大型企业中,传统企业架构要升级为云原生微服务架构,遗留系统和异构系统的服务注册与发现无疑是必须首要解决的问题。另外采用微服务架构的一大承诺收益点也在于每个微服务本身可以独立选择语言栈,但是到目前为止没有个一个服务发现产品能提供各种语言客户端的100%的完全覆盖。

以Zookeeper为例子,Zookeeper质量比较好的客户端仅有Java和C的客户端,那么非这两个语言体系的服务和系统就很难通过Zookeeper来注册与发现,而DNS天然是各种语言都支持的,使用DNS做服务发现对应用的侵入非常的小,非常适合应用往新微服务平台上的迁移。

以阿里巴巴为例,基于DNS-F模式的服务发现已经是阿里巴巴生产环境中的最重要方式之一,其对发现和打通像阿里妈妈、高德、优酷和搜索等这样的非Java语言体系的业务系统提供的服务,起到了举足轻重的作用。距离阿里巴巴内部发布的第一个Python版本的DNS-F客户端已经过去5个年头,而DNS-F的整体装机使用量对所有内部VIPServer各语言客户端的占比已经超过40%,可见其应用之广泛,而不用绑定在私有的VIPServerAPI上也是众多业务线愿意优先考虑DNS-F客户端的首要原因。

DNS协议本身是为www而生,并非为服务发现而生,所以在协议上,用在服务发现场景下DNS依然有不少的小瑕疵需要在未来从协议层面解决,比如DNS缓存TTL收敛的问题,比如操作系统以及各语言对SRV Record字段的支持问题,DNS包大小限制的问题等等,但随着Kubernetes以及微服务体系在各行业的深入应用,可以说DNS协议已经有为服务发现场景做进一步向前演进的必要,这方面阿里巴巴&Nacos会做持续的探索和推进。

支持 Java 11


9月25日,Oracle 官方宣布Java 11正式发布,这是继 Java 8 后的首个长期支持版本,Java11 在诸如ZGC,TLS 1.3,新的算法密钥协议,Lambda 局部变量语法支持,Standardize HTTPClient API 等不少方面做了改进,值得关注。

Nacos支持Java 11, 主要是指2个方面:

  • Nacos支持运行在Java11上

  • 将Nacos源码开发及构建环境升级到Java11

所以,现在状态是都已经支持。

实现Spring CloudGateway的动态路由

要实现微服务架构,微服务网关必不可少,Nacos 社区目前正在努力跟 Spring Cloud 的微服务网关做更多的打通与集成,Spring Cloud 中文社区创建者,《重新定义Spring Cloud实战》的作者 @许进 与近期贡献了如何基于Spring Cloud Gateway与Nacos实现动态路由能力的示例,毫无疑问,Spring Cloud Gateway作为所有请求流量的入口,在实际生产环境中为了保证高可靠和高可用,尽量避免重启,需要实现Spring Cloud Gateway 动态路由配置,等到这块足够成熟,会将其包含在Nacos的官方推荐实现中。

TTL & Health Status Aggregation

在Nacos之前的几个版本中,用户往往会在使用过程中产生疑惑,为什么注册的实例已经下线(宕掉)了,但是依然可以在Nacos控制台上看到实例的信息。这源于SpringCloud以及Dubbo等服务体系中,Eureka或者Zookeeper都有自动注销实例的能力,而且将自动注销作为注册中心的默认行为。但其实当服务的实例下线(宕掉)之后,注册中心有两种可能的行为,一个是将这个实例从服务下的实例列表中剔除出去,一个是保留该实例,只将实例状态置为不健康。Eureka和Zookeeper等注册中心,其实也支持持久化的实例注册,而Nacos只是将这种持久化的注册设成了默认的行为。

Nacos的服务发现模块,是基于内部的VIPServer演化而来。在VIPServer的主要场景中,服务是以域名的方式通过控制台注册到VIPServer的,并且VIPServer非常注重服务级别的元数据信息的定义带来的灵活“软负载”流量调度的能力,所以首要选择的是服务及实例的元数据的持久性存储,弱化了服务的提供端持续向VIPServer服务端发送心跳的能力,所以前期并没有将VIPServer 上报和汇聚实例健康状态的功能放出来。之前版本的服务实例的健康检查,必须由VIPServer服务端来主动发起来完成。但是如Nacos开源之初规划的那样,Nacos会同时支持两种模式。

对于复杂的云环境和网络拓扑环境中(如 VPC、边缘网络等)服务的健康检查,Nacos 提供了心跳上报模式和服务端主动探测2种健康检查模式。

所以随着Nacos 0.5.0 版本的发布,我们很高兴的宣布,Nacos已经正式支持基于TTL的服务实例自动注销功能。这个功能一部分是响应社区关于TTL功能的需求,更重要的一部分,这也是Nacos服务发现自然演进的一个方向。

从 0.5.0 版本开始,用户通过客户端SDK注册的实例,将默认开启TTL功能,实例会默认每5秒向服务端发送一次心跳,如果Nacos服务端15秒内没有收到实例的心跳,则会将实例置为不健康,如果30秒没有收到心跳,则会将直接将实例删除。Nacos的TTL功能,补充了Nacos作为注册中心在处理实例下线的另一种行为,通过灵活可动态配置的参数,用户还可以根据实际的应用场景任意切换使用这两种行为中的一种。

Nacos的TTL功能虽然还处在实验性质,主要有以下特色:

  • 进一步无缝融入SpringCloud生态和Dubbo生态

Nacos在最初的规划中,就已经计划能够帮助存量用户做无缝平滑迁移。而无缝平滑迁移除了注册中心的功能的完整性,体验、性能、一些重要的认知也能够从老注册中心接续过来。例如Eureka作为Spring Cloud里的主流注册中心,其默认行为就是会在没有收到实例心跳90秒后,将实例自动注销。而 Dubbo 里用的比较多的Zookeeper,也会使用临时节点,依托于Session超时时间来实现TTL功能。这这两种场景中,服务实例的注册基本都是通过服务提供端(Provider)使用注册中心客户端来完成的。Nacos目前已经提供了Spring Cloud体系的服务发现的完整解决方案,同时对Dubbo的适配和支持也会在最近的版本中释放出来。

  • 服务级别"元数据(metadata)"不会自动注销

Nacos支持服务、集群和实例多级别的元数据信息,与服务实例可以被自动注销相对的,服务本身的元数据信息不能随着服务的下线而丢失,因为这些元数据通常是在创建服务时有人为设定上去的(例如负载均衡策略,权重规则,保护阈值等)。这意味着同一个服务的实例的上上下下,再注册上来的时候,应该依然保有服务原来设定的相关的元数据信息。

在Eureka或者Consul中,由于并不支持服务级别设定任何元信息,因此当实例都临时下线时,整个服务也就查询不到任何存在过的痕迹了。而服务级别的元信息作为Nacos的一个非常重要的特色功能,未来会基于此开放一系列流量控制类的特色功能,都决定了Nacos服务本身的元数据信息不能随着服务的下线而丢失,另一方面,在客户端注册实例时,不允许提交服务级别的元信息,这样也保证了单个实例的注册或者注销不会影响服务级别的配置。我们提供了控制台来对服务元数据进行便捷的创建和编辑。

  • 将HSF的注册中心ConfigServer融入Nacos

在阿里巴巴集团内部,著名的HSF的注册中心ConfigServer支持的就是长连接注册模式(renew&TTL),因此当长连接断开时,自然而然的就会将实例注销掉。为了支持未来将HSF一些优秀的特性迁移和输出到Dubbo上,Nacos会逐渐将ConfigServer的核心能力融入到Nacos当中,而TTL则也是这个事情的基础。

而同时,Nacos非常看中产品在云上的适用性,在公有云上,因为用户往往注册到注册中心的IP是一个VPC的外部IP,因为公有云安全策略的限制,注册中心一般是不允许主动发起到VPC内的连接来做健康检查的,只能通过客户端上报心跳的模式来检查健康状态,也只有在客户端上报的模式下,才能启用自动注销功能。Nacos此次的TTL功能,很好的衔接了公有云和内部ConfigServer输出的需求,为后续的融合做好了初步的准备。

支持 Spring Cloud Alibaba 生态


就像 SpringOne Platform大会上Spring开发者 @Roy Clarkson 和 @Ollie Hughes 在《Cloud-Native Javawith Spring Cloud Services》里阐述的那样,采用微服务设计模式,首要的就是选择“ExternalConfiguration” “Service Registry” “Circuite Breaker”的实现,而 Spring Cloud forAlibaba这个项目则旨在通过输出阿里巴巴在服务化以及云上的分布式微服务经验打包在一个stack里,给你提供支撑大规模微服务的一站式解决方案,正如项目所述:

“The Spring Cloud Alibaba project, consisting of Alibaba’s open-source componentsand several Alibaba Cloud products, aims to implement and expose well knownSpring Framework patterns and abstractions to bring the benefits of Spring Bootand Spring Cloud to Java developers using Alibaba products.”

随着 Spring Cloud for Alibaba 0.2.0 的发布,Nacos Config, NacosService Discovery 和 Sentinel Circuite Breaker 都已一网而聚之。

持续优化用户体验

提升产品易用性永远是Nacos团队的核心关注点,在Nacos 0.5.0 版本就社区反馈的一些局部体验问题做了积极的修复,这包括前端UI的优化,启动状态展示的优化、性能调优等,例如:

  • #177 Consolesupports registering new empty service and delete empty service.

  • #222 printmore nacos server start status info in start.log.

  • #251 ConsoleEditor Optimization.

  • #254 DataIdand group are required in historical version and listener query.

  • #258 Removethe Balloon of DataId/Group.

更多优化和release信息见 Nacos Github。

来自:阿里巴巴中间件

easyjdbc 1.0.7 版本发布,Java dao工具

$
0
0

easyjdbc并不生产Jdbc,easyjdbc只是本地jdbc的搬运工。

项目介绍

easyjdbc在spring jdbctemplate之上进行了一些包装,支持部分常用的JPA注解,使得经过注解的实体可以像Hibernate,jpa一样进行增、删、改和获取。SQL构造工具、SQL注解、链式API等让查询操作更为灵活。动态实体映射使得各种查询不再需要写大量的RowMapper。

功能简介:

  1. 常用的JPA注解支持。

  2. 简化的批处理操作。

  3. 简化的分页操作。

  4. 灵活的链式查询API和SQL构造器以及SQL注解。

  5. 实体属性动态映射。

  6. 支持多种数据库(mysql,mariadb,oracle,sqlserver,postgresql,db2,sqlite,hsqldb)。

更新日志

1.0.7

  • 优化

  • 增加分页offset,limit

使用说明

ag-Grid 19.1.3 发布,企业级 JavaScript 数据网格

$
0
0

企业级 JavaScript 数据网格 ag-Grid 19.1.3 已发布,ag-Grid 是支持 Javascript / React / AngularJS / Web 组件的高级数据网格/数据表。

本次发布的 19.1.3 版本是一个次要版本,更新主要集中在 bug 的修复。

  • AG-2322 xlsx - getDataAsExcel should reject the call if exportMode = 'xlsx' since it is internally a zip file, also update the docs accordingly

  • AG-2315 When adding padding to the top of a grid or one of the outer containers has 0 height causes the positioning of any popup (context menu/column menu) to be off

  • AG-2300 xlsx export, error thrown if exporting with row /pivoting

  • AG-2203 popupParent option doesn't correctly position columnMenus/contextMenus/popup editors on small grids

详细更新内容请查看 https://www.ag-grid.com/ag-grid-changelog/
源码下载 https://github.com/ag-grid/ag-grid/releases/tag/19.1.3

ag-Grid 是一个企业级的 JavaScript 数据网格。

ag-Grid 的目的是提供可用于构建企业级应用的表格,例如报告和数据分析,业务流程和数据输入的数据表格。ag-Grid 每一个功能的文档至少有一个例子来展示该功能。

免费版功能演示

Aligned Grids

Cell Editing

Column Filter

Evergreen 3.1.8 和 3.2.2 发布,开源图书馆管理系统

$
0
0

Evergreen 社区为开源图书馆管理系统 Evergreen 发布了两个维护版本,分别是 3.1.8 和 3.2.2。这些版本包含 2018 Evergreen Hack-A-Way 期间所做的工作,以及其他重要的错误修复。可通过 Evergreen 下载页面下载这些新版本。

在 Evergreen 3.2.1 的基础上,Evergreen 3.2.2 包括以下的改进

  • Fixes a bug that blocked logging in from mobile browsers

  • Fixes a readability issue with mobile menus

  • Fixes performance issue related to grid tooltips.

  • Fixes an issue that caused some grid columns to appear empty.

  • Improves the functionality of setting a default tab of a bib record

  • The web client now remembers the most recently selected copy template

  • Adds help tips to Print Item Labels Settings tab

  • If you add or edit copies and/or volumes from the Holdings View tab, the view now automatically refreshes to show your changes.

  • Provides an upgrade to MODS 3.3 for older Evergreen installations.

  • Improves usability of Z39.50 MARC View.

  • Fixes a daylight savings time-related circulation bug.

  • Fixes a bug that caused deleted items to show up on the holds shelf.

  • Staff can now place multiple email addresses into the patron registration/ edit form, depending on the value of the ui.patron.edit.au.email.regex library setting.

  • Fixes an issue with the offline circulation module.

  • When merging two users, the non-lead account is now completely purged from the database, rather than simply being marked as deleted.

  • Fixes a bug which prevented the canceling of holds from the title record.

  • Removes incorrect copy counts from metarecord search results pages

  • Electronic resources now display in the browse interfaces

  • Restores ability to request password resets

  • The example Apache 2.4 configuration now enables remoteip.

  • Improves syntax in the fm_idl file.

在 Evergreen 3.1.7 的基础上,Evergreen 3.1.8 包括以下的改进

  • Fixes a bug that blocked logging in from mobile browsers

  • Fixes a readability issue with mobile menus

  • Fixes performance issue related to grid tooltips.

  • Improves the functionality of setting a default tab of a bib record

  • The web client now remembers the most recently selected copy template

  • Adds help tips to Print Item Labels Settings tab

  • If you add or edit copies and/or volumes from the Holdings View tab, the view now automatically refreshes to show your changes.

  • Provides an upgrade to MODS 3.3 for older Evergreen installations.

  • Improves usability of Z39.50 MARC View.

  • Staff can now place multiple email addresses into the patron registration/ edit form, depending on the value of the ui.patron.edit.au.email.regex library setting.

  • Fixes an issue with the offline circulation module.

  • When merging two users, the non-lead account is now completely purged from the database, rather than simply being marked as deleted.

  • Removes incorrect copy counts from metarecord search results pages

  • Electronic resources now display in the browse interfaces

  • The example Apache 2.4 configuration now enables remoteip.

  • Improves syntax in the fm_idl file.

请访问 Evergreen 下载页面进行下载并阅读完整的版本说明。

Evergreen 是一个开源(GNU通用公共许可证)的图书馆自动化(ILS),读者可以万维网实现图书的查找和借阅,许多北美的图书馆都使用它。

功能

  • OPAC

  • 图书馆目录

  • 借阅服务

  • 统计报告

系统需求

服务器端

  • Linux 操作系统

  • PostgreSQL 数据库管理系统

  • Apache HTTP Server 网页服务器

客户端

  • 网页浏览器

Istio 1.0.4 发布,大型微服务系统管理平台

$
0
0

Istio 1.0.4 发布了,Istio 是一个由谷歌、IBM 与 Lyft 共同开发的开源项目,旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。Istio 项目能够为微服务架构提供流量管理机制,同时亦为其它增值功能(包括安全性、监控、路由、连接管理与策略等)创造了基础。这款软件利用久经考验的 Lyft Envoy 代理进行构建,可在无需对应用程序代码作出任何发动的前提下实现可视性与控制能力。Istio 项目是一款强大的工具,可帮助 CTO/CIO 们立足企业内部实施整体性安全、政策与合规性要求。

暂未发现 1.0.4 的更新说明,详情请点此查看

FreeNAS 11.2-RC2 发布,基于 FreeBSD 的小型操作系统

$
0
0

FreeNAS 11.2-RC2 发布了,FreeNAS 是一份基于 FreeBSD 的小型操作系统,它提供免费的网络附加存储(NAS)服务(CIFS, FTP, NFS)。

值得关注的更新:

  • 登录界面默认为基于 Angular 的新 UI,希望继续使用经典 UI 的用户可以在登录屏幕中选择'LEGACY WEB INTERFACE'

  • 11.2 用户指南也提供了两个版本 —— 一个包含新 UI 的屏幕截图,另一个包含旧 UI 的屏幕截图

  • 从旧 API 到新中间件的重写仍在继续

  • 引导加载程序已由 GRUB 更改为原生 FreeBSD 引导加载程序

  • 云同步任务提供配置选项,以在数据传输之前对其进行加密,并在存储在云上时将数据保持为加密格式。文件名也可以加密。

完整的变更内容请查看发布公告

Download (SHA256)FreeNAS-11.2-RC2.iso (571MB)


IntelliJ IDEA 2018.3.1 RC 发布,bugfix 版本

$
0
0

IntelliJ IDEA 2018.3 已于昨天推出,现在 JetBrains 宣布其 bugfix 版本 IntelliJ IDEA 2018.3.1 的首个 RC 版已发布。

要注意的是,RC 版本需要 IntelliJ IDEA Ultimate 有效许可证。

IntelliJ IDEA 2017.3.1 RC 包含各种改进和错误修复:

  • 现在可以在外部工具中使用多个 $Prompt$ 宏:IDEA-129070

  • 对 Java Scratch 文件添加了一些小改进,现在 IDE 会建议修改 scratch 文件中方法的任何“抛出”,并建议类字段的“change type” 快速修复

其他:

  • The broken “Select in…” in new Search Everywhere is fixed: IDEA-197872

  • We fixed the replace for the pre-selected text: IDEA-200011.

  • Various improvements have been made in Spring Cloud Stream: IDEA-201865IDEA-201867IDEA-201605.

  • Fixed the problem when a wrong module dependency was resolved when the source set output folders are used as the project dependency configuration artifacts: IDEA-202271.

完整的变更列表请查看发布说明

IntelliJ IDEA 2018.3.1 RC 发布公告:https://blog.jetbrains.com/idea/2018/11/intellij-idea-2018-3-1-rc-is-here/

Redis 5.0.2 发布,高性能的 Key-Value 数据库

$
0
0

Redis 5.0.2 已发布,此版本修复了两个关于 Streams 消费者的问题 —— 可以在访问历史记录时由 XREADGROUP 复制项目的组,以及 XREADGROUP 可以报告某些历史记录的另一个错误,即使待添加的消费者列表为空。

目前已解决了这两个问题,并进行了单元测试以避免出现回归错误。

此外,该版本还修复了集群模式下 redis-cli 的一些问题。最后关于 FreeBSD 和 DragonFly 的一些构建问题现在也已经解决。

详情请查看发布公告

下载地址:

Gradle 5.0 RC5 发布,项目自动化构建工具

$
0
0

Gradle 5.0 RC5 发布了,该 RC 版本包含针对 5.0 RC4 报告的问题进行了修复:

  • #7813 Catch Exception instead of Throwable in dependency-management

  • #7792 Fix for starting a single-use daemon when client has low memory

  • #7796 Let init use the same Groovy version as embedded for Groovy DSL

  • #7795 Let init use the same Kotlin version as embedded for Kotlin DSL

查看发布说明以获取更多信息

有关升级要注意的事项,以及源码下载,请点此查看

Gradle 是一个基于 Apache Ant 和 Apache Maven 概念的项目自动化构建工具,支持依赖管理和多项目,类似 Maven,但比之简单轻便。它使用一种基于 Groovy 的特定领域语言来声明项目设置,而不是传统的 XML。

当前其支持的语言限于 Java、Groovy 和 Scala,计划未来将支持更多的语言。

GitLab 11.5 正式发布,带来 Group Security Dashboard

$
0
0

GitLab 11.5 正式版已发布,该版本带来了许多关于安全的新功能。如新的 Group Security Dashboard、Operations Dashboard,和对 GitLab Pages 的访问控制权限等。

Group Security Dashboard

Group Security Dashboard 提供了项目组中所有项目 SAST 漏洞的摘要,以及可用于启动修复过程的可操作条目列表。例如,可以使用建议的解决方案开启 issue,或者如果需要将其归类为误报,则只需关闭该条目。将来会添加对其他测试(依赖扫描、容器扫描和 DAST)的支持。

Operations Dashboard

GitLab 11.5 引入了一个新的、以操作为中心的仪表板,提供了用户感兴趣的每个项目的关键操作指标的摘要。这包括自上次部署以来的时间、最近的提交以及是否存在其他任何活动警报。

对 GitLab Pages 的访问控制权限

11.5 版本引入了一项出色的新功能,可以对 Pages 进行访问控制。现在,可以使用 Pages 来构建和发布只能由项目成员访问的受保护内容,以易于访问的方式自动发布操作文档、内部机密甚至私人计划或其他信息,同时确保只有特定的人才能访问。

详情请查看发布公告:https://about.gitlab.com/2018/11/22/gitlab-11-5-released/

PhpStorm 2018.3 正式版发布!

$
0
0

PhpStorm 2018.3 正式版已发布!这个主要版本带来了许多新的强大功能和改进,包括对 DQL 的支持、PHP CS Fixer、远程部署到多个主机、新的 intention actions 和改进的重构功能,支持 GitHub Pull Requests 和 Git submodules、支持 PHP 7.3,以及对可访问性的改进等等。

下载地址 >>> https://www.jetbrains.com/phpstorm/download/

PHP

详细更新说明请查看发布公告和 What’s New in PhpStorm 2018.3 页面。

Viewing all 44834 articles
Browse latest View live