搜索词>>NAS 耗时0.0050
  • 家庭nas硬盘选择_nas 硬盘推荐

    ​西数系列nas硬盘选择推荐前言红盘才是NAS盘?不,紫盘才是家用NAS最佳盘!我们主要说说现在很多人在组nas,同样也在选择家用nas硬盘或者个人nas硬盘​西数系列nas硬盘选择推荐前言红盘才是NAS盘?不,紫盘才是家用NAS最佳盘!我们主要说说现在很多人在组nas,同样也在选择家用nas硬盘或者个人nas硬盘。很多时候我们就被商家专业推广忽略了一些性价比的产品,比如“NAS紫盘”,今天我们来讲述下为何紫盘可以作为我们家用NAS盘最佳选择盘。家庭nas硬盘选择 我们知道西数的硬盘系列有很多,如上面的图中表示一样,每个盘都有它独特的特点,今天我们组要讲解的是家用nas个人nas存储组建硬盘的选择,主要讨论紫盘和红盘。红盘,就不说了,本身它的设计也是专为nas存储。今天我们要说说紫盘,大家都知道红盘的价格相对于紫盘来说基本贵一半。大家也知道紫盘其实和红盘一样也是7*24小时全天候设计,所以也可以作为nas存储的硬盘选择之一。或许大家还想知道紫盘和红盘作为nas硬盘的区别,下面我们从两个盘的性能和可靠性来讲解。紫盘红盘性能对比 首先是紫盘的性能参数,参考官方官网文档我们可以得到下面的资料:​紫盘性能参数我们再上红盘的参数:​红盘性能参数对比结果:从官方数据来看,除了红盘256M的那款2T盘,其他的1-4T盘速度与紫盘相差其实不大。都能达到100+MB/s,再配合raid,家用/个人普通使用性能完全够用。​红盘紫盘可靠性对比首先,上紫盘的可靠性参数:​紫盘可靠性/数据完整性再来看看红盘的可靠性:​红盘可靠性/数据完整性从上图可以看到:紫盘的优势紫盘的每次读位时不可恢复的读错误次数居然比红盘还小;同时大容量的紫盘MTBF故障时间也增加到了150W小时,红盘却没有(上图没展示到,可以官方文档查看,文末提供文档地址);工作负责额定值设计来看,低容量的紫盘和红盘一样180TB/年(但是紫盘大容量额定值在增加,但是红盘大容量却一直是180TB,参考官方文档,文末提供文档地址);保修年限两个盘都是3年;红盘优势:红盘再加载周期的参数上,胜过紫盘一半。这也是红盘作为nas盘的优势之一,可以随性的进行硬盘休眠再加载,紫盘设计为监控,一般不会经常出现休眠,所以这项设置并不高;借助红盘专业的的NASware 技术可以提高NAS硬盘性能和效率监控盘会丢数据?不存在的​​官方文档参考资料ALLFRAME 有的人对ALLFRAME理解有误,并非所有系统都支持这个技术,需要支持的专业监控设备系统才会触发这个指令,Windows啥的默认是没有这个指令的。就连群晖不开他那个监控软件,也是不会有这个玩意儿的。所以都特9120年了,不要相信那些片面的流传,什么监控盘丢数据之类的。都是瞎扯。我们再来参考监控盘的质量官方说明:​监控盘质量看见没官方也说了监控盘是普通盘的三倍工作负载评级。比普通蓝盘靠谱多了。总结​家用/个人日常使用,只要不是变态性的休眠/启动切换, 紫盘完全可以替代红盘作为NAS盘选择。注意:叠瓦盘不能要!叠瓦盘不能要!叠瓦盘不能要!购买前咨询店家
  • 群晖 NAS 如何使用 PhotoRec 恢复意外删除的文件

    转自群晖官网有多种工具可恢复从 Synology NAS 意外删除的数据转自群晖官网有多种工具可恢复从 Synology NAS 意外删除的数据。用户可以进入控制面板 > 共享文件夹,然后选择一个文件夹以启用回收站功能。回收站启用后,它将创建子文件夹来存储已删除的文件。然后,当您的文件被删除后,您可以进入回收站来检索您的文件。另一个可帮助您恢复已删除文件的工具是 Cloud Station Server 的版本查看器。要了解更多有关该工具的信息,请参阅本文。但是,如果您未启用回收站功能或者您不是 Cloud Station Server 用户,有几款免费的第三方软件或许可以帮助您恢复意外删除的文件。例如,PhotoRec 在您只有一个硬盘或有带两个硬盘的 RAID 1 阵列的情况下特别适用。请参见以下步骤以恢复删除的文件。注:PhotoRec 不支持 Btrfs 文件系统。如果您的 NAS 建在 RAID 1 上或只有一个硬盘:准备一台至少带一个可用额外硬盘插槽的计算机以从 Synology NAS 安装硬盘。从 Synology NAS 卸载一个硬盘并将其连接到您的计算机。请确认在 Synology NAS 的硬盘上运行的文件系统为 EXT4。进入 http://www.cgsecurity.org/wiki/TestDisk_Download 可下载适用于操作系统的 PhotoRec。启用 PhotoRec。例如在 Windows 版本中,exe 文件为 photorec_win.exe。​识别已连接到计算机的硬盘。利用键盘上的箭头键选择该硬盘,然后按 Enter。​选择文件保存所在的分区,然后按 Enter。​选择 [ext2/ext3] ext2/ext3/ext4 filesystem,然后按 Enter。​选择要保存恢复的文件的文件夹,然后按 C。​您在步骤 8 选择的目的地文件夹中会看到一系列文件夹,名为 recup_dir.1、recup_dir.2 等。这些文件夹中保存了恢复的文件。打开这些文件夹之一可搜索您所需的文件。​如果您的 RAID 阵列含有两个以上的硬盘:您还可通过以下步骤,用 PhotoRec 恢复删除的数据。请参见此教程,在 Ubuntu 计算机上重建 RAID 阵列。下载 Linux 版本的 PhotoRec 并用它来扫描 RAID 设备。请参见本文提及的步骤以用 PhotoRec 恢复文件。
  • 黑群晖6.2.2引导下载

    ​群晖-NAS届翘楚系统之一本文主要说一下群晖引导对应以及下载​群晖-NAS届翘楚系统之一本文主要说一下群晖引导对应以及下载。本下载应该是群晖6.x最全引导下载,下载内容包括 型号引导代号支持的群晖版本群晖6.2.2版本DS 918+1.04b6.2.2DS 3617xs1.03b6.2.2DS 3615xs1.03b6.2.2群晖6.1.7DS 916+1.02b6.1.7DS 3617xs1.02b6.1.7DS 3615xs1.02b6.1.7以下文件,统一解压密码:ifok 6.2.2版本:群晖DS918+ 6.2.2 引导下载地址:V1.04b for DSM 6.2.1 (current).zip群晖DS3615xs/DS3617xs 6.22 引导下载地址:V1.03b for DSM 6.2 (current).zip6.1.7版本:群晖DS 3615xs/ DS3617xs /DS 916+ 6.1.7 引导下载:V1.02b for DSM 6.1 (current).zip引导文件使用或者群晖安装请参考文章:黑群晖6.1.7 安装详细教程
  • Intel I3 8300T 参数 性能

    I3 8300T参数详情,I3 8300T 价格参考,I3 8300T性能参考,I3 8300T又一代高性能HTPC或者高性能NAS选择之一。I3 8300T
  • Zerotier账号注册_Zerotier免费稳定内网穿透工具

    Zerotier 是什么​我们的使命是直接连接世界各地的设备,并实现分散计算的新时代Zerotier 是什么​我们的使命是直接连接世界各地的设备,并实现分散计算的新时代。我们的软件自动处理跨物理网络边界的网络复杂性,处理移动性以及统一云和边缘,使您腾出时间来建设项目和运营业务。我们的网络虚拟化技术将企业软件定义的网络功能提供给每个设备,服务和应用程序,无论其位于边缘还是云中。借助ZeroTier,您可以将整个星球像一个数据中心或云区域一样对待。它足以满足具有复杂网络需求的大型企业的需求,但又足够容易,成千上万的普通人使用它来做一些简单的事情,例如在线玩游戏或从移动设备连接到家用PC。我们的软件和SDK可帮助开发人员构建易于创建和使用的分布式和分散式应用程序。我们致力于解决分散式应用程序开发背后的艰巨技术问题,因此您可以交付可提供积极的低摩擦用户体验的应用程序,同时避免因大量参与云计算而产生的成本,责任和安全/隐私影响。ZeroTier位于加利福尼亚州尔湾市,由Adam Ierymenko于2015年创立。说这么多都不重要,重要的是它的内网穿透免费版完全够用,免费版能接入100个设备。本文主要讲解Zerotier入门操作,账号注册及登录管理Zerotier 内网穿透后网络模型图 ​Zerotier提供了大量的客户端支持,在需要接入的设备上必须安装Zerotier提供的客户端。提示:目前Zerotier支持的系统有:Microsoft Windows 7+(32/64位)/MacOS 10.7+/Apple iOS 10+/Android 4.0.3+/Linux (DEB/RPM)/FreeBSD/Synology NAS/QNAP NAS/WD MyCloud NAS/Community OpenWRT Port(例如docker) 开源地址:ZeroTier One on GitHubZerotier 账号注册1.首先打开网页:my.www.zerotier.com​2.点击Log In to Zero Tier​上图中找到这个不容易看见的注册按钮,点进入下一步:​看到上面的页面后,填写注册信息,其中email需要认真填写,因为点击注册后会发送一封注册验证邮件。需要点击邮件进行通过注册验证。下面是点击注册后的页面:​这个时候去登录你注册时候填写的邮箱,在邮箱中找到zerotier发送的注册验证邮件,里面有个连接点击进去完成验证。接下来是登录,登录成功后,在Account(账户)栏目可以看到下面的信息:​可以看到,默认情况是Free(免费版本),并说明了免费版支持100个设备连接。​上图是网络管理的页面,下一章将会讲解zerotier网络创建及配置相关操作。
  • spring boot整合cxf发布webservice服务和spring boot整合cxf客户端调用webservice服务

    spring boot整合cxf发布webservice服务和cxf客户端调用,说起web service最近几年restful大行其道,大有取代传统soap web service的趋势,但是一些特有或相对老旧的系统依然使用了传统的soap web service,例如银行、航空公司的机票查询接口等。<h2>一.前言</h2>     说起web service最近几年restful大行其道,大有取代传统soap web service的趋势,但是一些特有或相对老旧的系统依然使用了传统的soap web service,例如银行、航空公司的机票查询接口等。本博客主要讲解得是spring boot整合cxf发布webservice服务和spring boot整合cxf客户端调用webservice服务<br /> 本案例使用maven方式 <h2>二.编码</h2> 核心文件清单<br /> <strong>1.pom.xml</strong> <pre> <code class="language-xml"><?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.leftso</groupId> <artifactId>demo-webservice-cxf</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>demo-webservice-cxf</name> <description>Demo project for Spring Boot security</description> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.5.RELEASE</version> <relativePath /> <!-- lookup parent from repository --> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- CXF webservice --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-spring-boot-starter-jaxws</artifactId> <version>3.1.7</version> </dependency> <!-- CXF webservice --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project></code></pre> <br /> <strong>2.CommonService.java 服务接口</strong> <pre> <code class="language-java">package com.leftso.webservice; import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; /** * 接口 * * @author leftso * */ @WebService(name = "CommonService", // 暴露服务名称 targetNamespace = "http://webservice.leftso.com/"// 命名空间,一般是接口的包名倒序 ) public interface CommonService { @WebMethod @WebResult(name = "String", targetNamespace = "") public String sayHello(@WebParam(name = "userName") String name); }</code></pre> <br /> <strong>3.接口实现</strong> <pre> <code class="language-java">package com.leftso.webservice; import javax.jws.WebService; import org.springframework.stereotype.Component; /** * 接口实现 * * @author leftso * */ @WebService(serviceName = "CommonService", // 与接口中指定的name一致 targetNamespace = "http://webservice.leftso.com/", // 与接口中的命名空间一致,一般是接口的包名倒 endpointInterface = "com.leftso.webservice.CommonService"// 接口地址 ) @Component public class CommonServiceImp implements CommonService { @Override public String sayHello(String name) { return "Hello ," + name; } }</code></pre> <br /> <strong>4.配置cxf服务发布,默认服务在Host:port/services/***路径下</strong> <pre> <code class="language-java">package com.leftso.config; import javax.xml.ws.Endpoint; import org.apache.cxf.Bus; import org.apache.cxf.jaxws.EndpointImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import com.leftso.webservice.CommonService; @Configuration public class CxfConfig { @Autowired private Bus bus; @Autowired CommonService commonService; /** JAX-WS **/ @Bean public Endpoint endpoint() { EndpointImpl endpoint = new EndpointImpl(bus, commonService); endpoint.publish("/CommonService"); return endpoint; } }</code></pre> 这里相当于把Commonservice接口发布在了路径<span style="color:#ff0000">/services/CommonService</span>下,wsdl文档路径为<span style="color:#ff0000">http://localhost:8080/services/CommonService?wsdl</span><br /> <br /> <strong>创建基于cxf的客服端调用webservice接口(非使用wsdl文档生成java类)</strong> <pre> <code class="language-java">package com.leftso.client; import org.apache.cxf.endpoint.Client; import org.apache.cxf.jaxws.JaxWsProxyFactoryBean; import org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory; import com.leftso.webservice.CommonService; public class CxfClient { public static void main(String[] args) { cl1(); } /** * 方式1.代理类工厂的方式,需要拿到对方的接口 */ public static void cl1() { try { // 接口地址 String address = "http://localhost:8080/services/CommonService?wsdl"; // 代理工厂 JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new JaxWsProxyFactoryBean(); // 设置代理地址 jaxWsProxyFactoryBean.setAddress(address); // 设置接口类型 jaxWsProxyFactoryBean.setServiceClass(CommonService.class); // 创建一个代理接口实现 CommonService cs = (CommonService) jaxWsProxyFactoryBean.create(); // 数据准备 String userName = "Leftso"; // 调用代理接口的方法调用并返回结果 String result = cs.sayHello(userName); System.out.println("返回结果:" + result); } catch (Exception e) { e.printStackTrace(); } } /** * 动态调用方式 */ public static void cl2() { // 创建动态客户端 JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); Client client = dcf.createClient("http://localhost:8080/services/CommonService?wsdl"); // 需要密码的情况需要加上用户名和密码 // client.getOutInterceptors().add(new ClientLoginInterceptor(USER_NAME, // PASS_WORD)); Object[] objects = new Object[0]; try { // invoke("方法名",参数1,参数2,参数3....); objects = client.invoke("sayHello", "Leftso"); System.out.println("返回数据:" + objects[0]); } catch (java.lang.Exception e) { e.printStackTrace(); } } }</code></pre> <br /> <br /> 调用后返回结果输出为 <pre> <code class="language-html">Hello,Leftso</code></pre> <br /> <br /> 项目源码GITHUB下载:<a href="https://github.com/leftso/demo-spring-boot-cxf" rel="external nofollow" target="_blank" >点击下载</a> <h2>三.问题Q&A</h2> <h3>3.1已知问题1</h3> 将上面例子的Spring Boot版本升级至1.5.x。启动项目报错: <pre> <code class="language-html">java.lang.NoClassDefFoundError: org/springframework/boot/context/embedded/ServletRegistrationBean at java.lang.Class.getDeclaredMethods0(Native Method) ~[na:1.8.0_40] at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) ~[na:1.8.0_40] at java.lang.Class.getDeclaredMethods(Class.java:1975) ~[na:1.8.0_40] at org.springframework.util.ReflectionUtils.getDeclaredMethods(ReflectionUtils.java:613) ~[spring-core-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:524) ~[spring-core-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.util.ReflectionUtils.doWithMethods(ReflectionUtils.java:510) ~[spring-core-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.util.ReflectionUtils.getUniqueDeclaredMethods(ReflectionUtils.java:570) ~[spring-core-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryMethod(AbstractAutowireCapableBeanFactory.java:697) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.determineTargetType(AbstractAutowireCapableBeanFactory.java:640) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.predictBeanType(AbstractAutowireCapableBeanFactory.java:609) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.isFactoryBean(AbstractBeanFactory.java:1484) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.doGetBeanNamesForType(DefaultListableBeanFactory.java:425) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:395) ~[spring-beans-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:96) ~[spring-context-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:687) ~[spring-context-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:525) ~[spring-context-4.3.12.RELEASE.jar:4.3.12.RELEASE] at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.8.RELEASE.jar:1.5.8.RELEASE] at com.leftso.Application.main(Application.java:10) [classes/:na] Caused by: java.lang.ClassNotFoundException: org.springframework.boot.context.embedded.ServletRegistrationBean at java.net.URLClassLoader.findClass(URLClassLoader.java:381) ~[na:1.8.0_40] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_40] at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) ~[na:1.8.0_40] at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_40] ... 23 common frames omitted</code></pre> <strong>解决办法:</strong><br />     出现这个问题的第一时间,我以为是常规的maven管理jar包依赖问题。后面群里有小伙伴多次尝试证明了不是maven的依赖包问题。而是spring boot的版本和cxf的版本不兼容问题。<br /> 已知兼容版本: <ul> <li><span style="color:#ff0000"><strong>Spring boot 1.4.x ------>cxf-spring-boot-starter-jaxws 3.1.x</strong></span></li> <li><span style="color:#ff0000"><strong>Spring boot 1.5.x------->cxf-spring-boot-starter-jaxws 3.2.x</strong></span></li> </ul> 所以出现上面问题,且用了spring boot 1.5.x的小伙伴请将cxf-spring-boot-starter-jaxws 版本升级到3.2.1即可解决。<br /> <br /> <strong>3.2修改spring boot cxf整合后默认的/services路径</strong><br /> 在spring boto的application配置文件中配置<br /> cxf.path=/yourpath
  • Dubbo 整合 quartz NullPointerException错误解决

    环境信息dubbo 2.6.5spring-boot-starter-quartz 2.0.6.RELEASEspring boot 2.0.6.RELEASENPE错误信息org.quartz.SchedulerException: Jo环境信息dubbo 2.6.5spring-boot-starter-quartz 2.0.6.RELEASEspring boot 2.0.6.RELEASENPE错误信息org.quartz.SchedulerException: Job instantiation failed at org.springframework.scheduling.quartz.AdaptableJobFactory.newJob(AdaptableJobFactory.java:47) ~[spring-context-support-5.0.10.RELEASE.jar:5.0.10.RELEASE] at org.quartz.core.JobRunShell.initialize(JobRunShell.java:127) ~[quartz-2.3.0.jar:na] at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:392) [quartz-2.3.0.jar:na] Caused by: java.lang.NullPointerException: null at com.alibaba.dubbo.config.spring.beans.factory.annotation.DubboConfigBindingBeanPostProcessor.postProcessBeforeInitialization(DubboConfigBindingBeanPostProcessor.java:79) ~[dubbo-2.6.5.jar:2.6.5] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:416) ~[spring-beans-5.0.10.RELEASE.jar:5.0.10.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1686) ~[spring-beans-5.0.10.RELEASE.jar:5.0.10.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:407) ~[spring-beans-5.0.10.RELEASE.jar:5.0.10.RELEASE] at org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory.createJobInstance(AutowireCapableBeanJobFactory.java:45) ~[spring-boot-autoconfigure-2.0.6.RELEASE.jar:2.0.6.RELEASE] at org.springframework.scheduling.quartz.AdaptableJobFactory.newJob(AdaptableJobFactory.java:43) ~[spring-context-support-5.0.10.RELEASE.jar:5.0.10.RELEASE] ... 2 common frames omitted ​NullPointerException 原因分析spring-boot-autoconfigure-2.0.2.RELEASE.jar->AutowireCapableBeanJobFactory.java    protected Object createJobInstance(TriggerFiredBundle bundle) throws Exception {        Object jobInstance = super.createJobInstance(bundle);        this.beanFactory.autowireBean(jobInstance);        this.beanFactory.initializeBean(jobInstance, (String)null);        return jobInstance;   }注意,上面创建job实列时候,赋值的bean的name为 `nulldubbo-2.6.5.jar>DubboConfigBindingBeanPostProcessor.java    public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {        if (beanName.equals(this.beanName) && bean instanceof AbstractConfig) {            AbstractConfig dubboConfig = (AbstractConfig)bean;            this.bind(this.prefix, dubboConfig);            this.customize(beanName, dubboConfig);       } ​        return bean;   }提示,dubbo在使用beanName的时候未作空验证,导致NullPointerException解决办法根据dubbo的说法升级spring boot 版本,参考https://github.com/apache/dubbo/issues/2429    <parent>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-starter-parent</artifactId>        <version>2.3.5.RELEASE</version>        <relativePath/>    </parent>测试通过,升级到 2.1.9.RELEASE , 2.1.18.RELEASE ,2.3.5.RELEASEapplication.properties 文件增加配置spring.main.allow-bean-definition-overriding=true提示:如果application.properties文件不添加上方配置可能在启动时候报错当dubbo版本为(2.6.9)时候,2.6.5版本不会
  • Python教程-Python中的变量

    了解python中的变量,声明局部变量和全局变量了解python中的变量,声明局部变量和全局变量。另外,了解python函数内部使用的全局关键字。​1.创建变量1.1。简单分配Python语言没有用于声明变量的关键字。当我们首先为变量赋值时,会立即在适当位置创建一个变量。创建变量:i = 20 blogName = "leftso" print(i) # prints 20 print(blogName) # prints leftso可以使用单引号和双引号来创建字符串类型的变量。$title(String类型) author = 'Lokesh' blogName = "leftso" print(author) # prints Lokesh print(blogName) # prints leftso1.2。连锁分配Python还允许使用链式分配,这使得可以将相同的值同时分配给多个变量。i = j = k = 20 print(i) # prints 20 print(j) # prints 20 print(k) # prints 201.3。单行中的多个分配Python允许您在一行中将值分配给多个变量。x, y, z = "A", "B", 100 print(x) # prints A print(y) # prints B print(z) # prints 1001.2。变量重新声明由于变量不需要数据类型信息,因此我们可以毫无问题地重新分配任何类型的新值。在Python中,可以为变量分配一种类型的值,然后在以后重新分配其他类型的值。$title(变量重申明) index = 10 index = 20 index = "NA" print(index) # prints NA2.命名规范在Python中创建变量的规则是:变量名必须以字母或下划线字符开头。变量名不能以数字开头。变量名称只能包含字母数字字符和下划线 (A-z, 0-9, and _ )。变量名称区分大小写。例如,name, Name 和 NAME是三个不同的变量。注意: Python 3具有完整的Unicode支持,它也允许在变量名中使用Unicode字符。3.局部变量与全局变量3.1。创建局部变量和全局变量在函数内部创建的变量称为局部变量。在函数外部创建的变量是全局变量。全局变量可以被函数内部和外部的每个人使用。x = 10 # 全局变量 def myfunc(): y = 10 # 局部变量 print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20 myfunc() print("Sum of x and y = " + str(x + y)) # NameError: name 'y' is not defined3.2。局部变量限制在函数范围内如果在函数内部创建具有相同名称的变量,则该变量将是局部变量,并且只能在函数内部使用。具有相同名称的全局变量将保留原样,并具有原始值。x = 10 # 全局变量 def myfunc(): x = 20 # 局部变量 print("x is " + str(x)) # prints x is 20 myfunc() print("x is " + str(x)) # prints x is 103.3。'global'关键字要在函数内部创建全局变量,可以使用global关键字。x = 10 # 全局变量 def myfunc(): global y y = 10 # 在函数内部创建的全局变量 print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20 myfunc() print("Sum of x and y = " + str(x + y)) # prints Sum of x and y = 20Python变量 图像 小部件
  • 黑群晖6.1.7 安装详细教程

    免责声明:本文所提供的内容均来自互联网收集整理或佚名,并不代表本站的观点和导向,本文只作为技术研究测试;请尊重知识产权,使用正版!黑群晖二合一教程请点击这里前往:黑群晖二合一安装图文详细教程-------------------------免责声明:本文所提供的内容均来自互联网收集整理或佚名,并不代表本站的观点和导向,本文只作为技术研究测试;请尊重知识产权,使用正版!黑群晖二合一教程请点击这里前往:黑群晖二合一安装图文详细教程--------------------------------------------------------------------------------------------------------以下为黑群晖常规安装方式黑群晖6.1.7 物理机安装详细教程​群晖简介准备资源 (所有软件资源已打包免费下载,下载地址)1.U盘一枚,注意改U盘需要永久插电脑上作为引导,1G+足以;2.引导文件下载3.系统资源下载DS3617xs版本6.1.7-15284 pat文件 https://cndl.synology.cn/download/DSM/release/6.1.7/15284/DSM_RS3617xs_15284.patDS3615xs版本6.1.7-15284 pat文件https://cndl.synology.cn/download/DSM/release/6.1.7/15284/DSM_DS3615xs_15284.pat4.适合运行NAS的设备 如HP的 MicroServer Gen8 Gen10 等等U盘制作 步骤摘要1.芯片无忧/芯片精灵 用于获取U盘VID、PID2.OSFMount 用于修改引导映像synoboot.img 内的启动盘VID、PID以及网卡MAC地址3.Win32DiskImager 用于把修改好的引导映像synoboot.img 写入到U盘中 插入U盘,开启'芯片无忧'或者芯片精灵软件(Windows10中该软件运行速度较慢请等待 不要操作,如操作了会提示停止运行)​U盘信息读取保存记录下VID PID确保你已经准备好synoboot.img引导映像;打开OSFMount(OSFMount本站提供是安装版请确保已安装)​ 点击Mount new​点击Mount new 参照设置 特别注意 Read-only drvie(只读模式不能打勾)​确认无误 点击OK这时候多出一个虚拟驱动器​虚拟驱动器进入驱动器目录 /grub/ 找到grub.cfg文件 使用Notepad++(推荐) 或者记事本打开​grub.cfg文件 使用Notepad++​代码如下 set vid=0x0DD8 //修改 0DD8 为你U盘的VID 保留前面的0x set pid=0x0C00 //修改 0C00 为你U盘的PID 保留前面的0x set sn=C7LWN09761 //此处为序列号 如你有的洗白需求的话可修改 set mac1=00113207DCBD //此处为网卡MAC修改为和你NAS一致的MAC 洗白的话需要001132开头 需要该硬件MAC提示:初步安装仅仅需要PID和VID设置对就ok,SN/MAC是用来洗白用的,的有对应的号,如果没有则不管洗白群晖就配合SN和MAC的组合修改完成点击保存!​修改完成点击保存! 返回到OSFMount软件点击Dismount all& Exit​点击Dismount all& Exit​点击“是” 确认 这里synoboot.img映像已经修改完成,这时候需要把synoboot.img映像写入到U盘中打开Win32DiskImager软件​打开Win32DiskImager软件等待写入完成引导U盘就制作好了开始安装 安装需要用到软件:群晖助手(Synology Assistant)点击下载windows版 MAC版自行官网下载把制作好引导的U盘插入NAS机器 为更好的保护硬盘,先不连接硬盘 只插入引导U盘如BIOS没有设置USB设备优先引导的 请前往设置和你操作的电脑同一局域网 插好网线 开机!开机稍等一会儿 没什么问题应该到了以下界面​开机并不是卡了 是已经好了!注意!打开群晖助手(Synology Assistant) 点击搜索 看到了如下结果!​打开群晖助手(Synology Assistant)到此 说明引导正常!那么就先关机 因为无法操作软关机 且无硬盘 可以直接长按开关关机,然后把硬盘装好 再开机,继续!再次开机后 打开群晖助手(Synology Assistant) 点击搜索 看到了上面的结果!双击该服务器浏览器自动弹出​双击该服务器稍等片刻点击设置​点击设置注意:如果这里的设置为灰色,请尝试直接用群晖助手安装系统。点击手动安装​点击手动安装 该引导实测 不支持6.2版本,请勿更新6.2;实测更新后 提示引导正常 但无法搜到服务器自行下载安装文件 选择浏览 选择pat文件​选择浏览 选择pat文件点击立即安装弹出提示 作为安装盘的磁盘 将被清除所有数据 选勾并确认​弹出提示 作为安装盘的磁盘 将被清除所有数据 选勾并确认 这时候 便开始从互联网上下载官方最新的DSM系统了​开始从互联网上下载官方最新的DSM系统了 约50秒提示开始安装,约1分钟提示完成开始重启​约50秒提示开始安装,约1分钟提示完成开始重启​重启 重启过程大概3分钟 浏览器自动刷新 开始做最后的设置设置服务器名称 管理员账号密码​设置服务器名称 管理员账号密码 更新选项一般选择 下载DSM更新 并手动安装​下载DSM更新 并手动安装 QuickConnect选项 上面提到 黑群晖无法使用QuickConnect服务 所以点击跳过即可​QuickConnect服务 所以点击跳过即可 ​​已知问题HP ProLiant MicroServer N54L 在该DSM6.1.x下 正常引导了 但群晖助手无法搜索到 需要关闭Bios中CPU的C1选项该引导实测 不支持6.2版本,请勿更新6.2;其他版本引导请移步:黑群晖6.2.2引导下载
  • Intel Core I3 4130对比I3 4130T区别优缺点

    Intel Core I3 4130对比I3 4130T,标准版与节能版区别对比,Intel Core I3 4130对比I3 4130T区别优缺,i3 4130T<h3 style="text-align:center">Intel Core I3 4130对比I3 4130T区别优缺点</h3> <h3><img srcset="" width="" size="" class="img-thumbnail" alt="Intel Core I3 4130对比I3 4130T" src="/assets/upload/blog/thumbnail/2017-05/bd7265cb1619414d90a548e39b87d3da.jpg" /><br /> <br /> Intel Core i3-4130 优点:</h3> <ul> <li>单线程任务处理方面性能高出17%.</li> <li>多线程任务中,性能高出16%.</li> <li>内存集成控制器快9%.</li> <li>图形处理器(集成GPU)性能更好.</li> <li>综合来说I3 4130在价格/性能上都高出I3 4310T大约11%.</li> </ul> <h3>Intel Core i3-4130T 优点:</h3> <ul> <li>比I3 4130节能约35%.</li> <li>CPU运行温度更低,可适度减少噪音污染(带T系列的cpu比较适合长时间开机运行的设备,如家用HTPC,监控,nas网盘等)</li> </ul> <br />