存储方案(DAS、NAS、SAN、OSS)与分布式文件系统的关系?
     以存储方案DAS为例,存储系统中有服务器有磁盘,有文件系统管理磁盘,是一个完整的系统,为了解决数据的共享和访问。
            而分布式文件系统也是为了解决存储、共享的问题,在分布式文件系统中,数据存储在许多磁盘上,文件系统管理整个存储空间。
            以上两者的区别在哪里?
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
阿里云oss和阿里云nas文件存储选择问题
1,各位大神,问个问题:java_web项目,大家是怎么存储这类静态资源的(直接链接能访问,例如图片,静态html文章)?用阿里云的oss 还是 用阿里云nas文件系统存储 ? 为啥呢? 如果用阿里云nas文件系统的话,是不是要把文件挂载到tomcat等服务器里面?
springboot如何获取oss服务器的签名权限 让前端页面可以访问文件或图片的链接地址打开图片
最近做一个项目 要将文件或者图片放在阿里的oss服务器上 但是oss的服务器不是公共读的 需要在后端做一个验证 可以把访问oss的权限传给前端 让前端可以打开oss服务器上文件 的链接打开 请问大佬们有没有什么方法可以获取这个oss服务器的访问权限
关于阿里云的OSS对象存储的使用问题
在阿里云的OSS官方文档中,有一个是快速搭建移动应用直传服务, (https://help.aliyun.com/document_detail/32045.html?spm=a2c4g.11186623.2.15.4e637401hfjULB) 其中有一步是这样的 ![图片说明](https://img-ask.csdn.net/upload/201908/09/1565338887_258043.png) 但是实际运行时结果却是![图片说明](https://img-ask.csdn.net/upload/201908/09/1565338967_627840.png) 没有返回数据,也没有返回STS鉴权服务器的网址,有没有用过这个的大佬可以告知一下原因QAQ
阿里云怎么用js解决多个文件上传,并且每个文件都是分片上传的?
之前项目要一个视频上传阿里云功能。我就用了阿里的aliyun-oss-sdk插件来分片上传,解决了视频上传缓慢的功能。但是现在需要有一个多文件上传的功能 ,不知道怎么才能多文件上传。这个插件好像默认只传file按钮中选择的第一个文件。有没有大牛能告诉我一下怎么解决。
今天看到一个帖子,把对象存储oss集成到thinkPHP,将图片上传到oss里面
![图片说明](https://img-ask.csdn.net/upload/201611/30/1480494974_538322.jpg) 可以在阿里云网站下载oss的demo源代码PHP版:v2.0.5 https://help.aliyun.com/document_detail/32174.html?spm=5176.doc44688.6.375.MwiLwn 不过,阿里云的这个demo,用的是命名空间(命名空间具体功能我也没搞懂,各位自行百度,高手请路过),如要集成到thinkPHP里面需要修改下相关文件和命名空间,我已经整理好了。 第一步:将oss引入到tp框架里面,路径为: Thinkphp-->Library-->Org,将OSS文件夹放在org里面。 第二步:公共配置文件里面 //oss配置 "OSS_ACCESS_ID" => '', "OSS_ACCESS_KEY"=> '', "OSS_ENDPOINT" => '', "OSS_TEST_BUCKET" => '', "OSS_WEB_SITE" =>'', //上面4个就不用介绍了,这个OSS_WEB_SITE是oss的bucket创建后的外网访问地址,如需二级域名,可以指向二级域名,具体可以参考阿里云控制台里面的oss //oss文件上传配置 'oss_maxSize'=>1048576, //1M 'oss_exts' =>array(// 设置附件上传类型 'image/jpg', 'image/gif', 'image/png', 'image/jpeg', 'application/octet-stream',//阿里云好像都是通过二进制上传,似乎上面4个后缀设置起到什么用? ), 第三步:公共function里面 // 返回json function backJson($code,$info){ $arr['status']=$code; $arr['info']=$info; print_r(json_encode($arr)); exit; } //oss上传 /* *$fFiles:文件域 *$n:上传的路径目录 *$ossClient *$bucketName *$web:oss访问地址 *$isThumb:是否缩略图 */ function ossUpPic($fFiles,$n,$ossClient,$bucketName,$web,$isThumb=0){ $fType=$fFiles['type']; $back=array( 'code'=>0, 'msg'=>'', ); if(!in_array($fType, C('oss_exts'))){ $back['msg']='文件格式不正确'; return $back; exit; } $fSize=$fFiles['size']; if($fSize>C('oss_maxSize')){ $back['msg']='文件超过了1M'; return $back; exit; } $fname=$fFiles['name']; $ext=substr($fname,stripos($fname,'.')); $fup_n=$fFiles['tmp_name']; $file_n=time().'_'.rand(100,999); $object = $n."/".$file_n.$ext;//目标文件名 if (is_null($ossClient)) exit(1); $ossClient->uploadFile($bucketName, $object, $fup_n); if($isThumb==1){ // 图片缩放,参考https://help.aliyun.com/document_detail/44688.html?spm=5176.doc32174.6.481.RScf0S $back['thumb']= $web.$object."?x-oss-process=image/resize,h_300,w_300"; } $back['code']=1; $back['msg']=$web.$object; return $back; exit; } 第四步:控制器里的操作方法里面,例如控制器是Index, public function upPic(){ //oss上传 $bucketName = C('OSS_TEST_BUCKET'); $ossClient = new \Org\OSS\OssClient(C('OSS_ACCESS_ID'), C('OSS_ACCESS_KEY'), C('OSS_ENDPOINT'), false); $web=C('OSS_WEB_SITE'); //图片 $fFiles=$_FILES['pic_1']; $rs=ossUpPic($fFiles,'s',$ossClient,$bucketName,$web,0); if($rs['code']==1){ //图片 $img = $rs['msg']; //如返回里面有缩略图: $thumb=$rs['thumb']; }else{ $this->error('图片有误:'.$rs['msg']); return; } } 第五步:调用,文件域名pic_1,要与第四步里面的$_FILES['pic_1']一致。action地址为控制器的操作地址,例如:/index.php/Home/Index/upPic <meta charset="UTF-8"/> <form action="/index.php/Home/Index/upPic" enctype="multipart/form-data" method="post"> <input type="file" name="pic_1" value="" /> <input type="submit" value="上传"/> </form> 演示链接如下:http://www.erdangjiade.com/js/875.html
OSS循环上传30多个文件, 有一个文件显示上传超时,其他都成功了
# 代码如下: // 上传文件 private static void uploadFile(OSSClient client, String bucketName, String key, File file) throws OSSException, ClientException, IOException { ObjectMetadata objectMeta = new ObjectMetadata(); objectMeta.setContentLength(file.length()); String fileName=key.substring(key.lastIndexOf(".")); if(fileName.equalsIgnoreCase(".pdf")) { objectMeta.setContentType("application/pdf"); }else if(fileName.equalsIgnoreCase(".zip")){ objectMeta.setContentType("application/octet-stream"); }else{ // 可以在metadata中标记文件类型 objectMeta.setContentType("image/jpeg"); } InputStream input = new FileInputStream(file); client.putObject(bucketName, key, input, objectMeta); input.close(); } # 控制台输出如下: 12-Jun-2018 09:18:44.694 警告 [http-nio-8084-exec-7] com.aliyun.oss.common.comm.ServiceClient.sendRequestImpl Unable to execute HTTP request: Read timed out [ErrorCode]: SocketTimeout [RequestId]: Unknown 12-Jun-2018 09:19:37.353 警告 [http-nio-8084-exec-7] com.aliyun.oss.common.comm.ServiceClient.sendRequestImpl Unable to execute HTTP request: Read timed out [ErrorCode]: SocketTimeout [RequestId]: Unknown 2018-06-12 09:19:37.368 | UPLOAD FILE ERROR ! com.aliyun.oss.ClientException: Read timed out [ErrorCode]: SocketTimeout [RequestId]: Unknown at com.aliyun.oss.common.utils.ExceptionFactory.createNetworkException(ExceptionFactory.java:65) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.common.comm.DefaultServiceClient.sendRequestCore(DefaultServiceClient.java:62) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.common.comm.ServiceClient.sendRequestImpl(ServiceClient.java:126) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.common.comm.ServiceClient.sendRequest(ServiceClient.java:72) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.internal.OSSOperation.send(OSSOperation.java:92) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.internal.OSSOperation.doOperation(OSSOperation.java:133) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.internal.OSSOperation.doOperation(OSSOperation.java:111) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.internal.OSSObjectOperation.writeObjectInternal(OSSObjectOperation.java:518) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.internal.OSSObjectOperation.putObject(OSSObjectOperation.java:112) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.OSSClient.putObject(OSSClient.java:407) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.aliyun.oss.OSSClient.putObject(OSSClient.java:394) ~[aliyun-sdk-oss-2.0.5.jar:na] at com.tmbj.api.service.imgupload.UploadService.uploadFile(UploadService.java:104) ~[classes/:na] at com.tmbj.api.service.imgupload.UploadService.upload(UploadService.java:39) ~[classes/:na] at com.tmbj.api.service.imgupload.UploadService$$EnhancerByCGLIB$$487d1c8f.CGLIB$upload$0(<generated>) [cglib-nodep-3.1.jar:na] at com.tmbj.api.service.imgupload.UploadService$$EnhancerByCGLIB$$487d1c8f$$FastClassByCGLIB$$3380697a.invoke(<generated>) [cglib-nodep-3.1.jar:na] at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) [cglib-nodep-3.1.jar:na] at com.jfinal.aop.Invocation.invoke(Invocation.java:82) [classes/:na] at com.jfinal.aop.Callback.intercept(Callback.java:96) [classes/:na] at com.tmbj.api.service.imgupload.UploadService$$EnhancerByCGLIB$$487d1c8f.upload(<generated>) [cglib-nodep-3.1.jar:na] at com.tmbj.api.controller.TmInsureFenqiController.setContractValue(TmInsureFenqiController.java:1305) [classes/:na] at com.tmbj.api.controller.TmInsureFenqiController.createLoadContract(TmInsureFenqiController.java:998) [classes/:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_151] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_151] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_151] at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_151] at com.jfinal.aop.Invocation.invoke(Invocation.java:73) [classes/:na] at com.tmbj.api.session.CorsInterceptor.intercept(CorsInterceptor.java:35) [classes/:na] at com.jfinal.aop.Invocation.invoke(Invocation.java:67) [classes/:na] at com.tmbj.api.exception.TmbjExceptionInterceptor.intercept(TmbjExceptionInterceptor.java:28) [classes/:na] at com.jfinal.aop.Invocation.invoke(Invocation.java:67) [classes/:na] at com.tmbj.api.session.SessionInterceptor.intercept(SessionInterceptor.java:39) [classes/:na] at com.jfinal.aop.Invocation.invoke(Invocation.java:67) [classes/:na] at com.jfinal.core.ActionHandler.handle(ActionHandler.java:74) [classes/:na] at com.jfinal.ext.handler.UrlSkipHandler.handle(UrlSkipHandler.java:45) [classes/:na] at com.jfinal.plugin.druid.DruidStatViewHandler.handle(DruidStatViewHandler.java:75) [classes/:na] at com.jfinal.core.JFinalFilter.doFilter(JFinalFilter.java:72) [classes/:na] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) [catalina.jar:8.5.31] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) [catalina.jar:8.5.31] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) [catalina.jar:8.5.31] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) [catalina.jar:8.5.31] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:496) [catalina.jar:8.5.31] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) [catalina.jar:8.5.31] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) [catalina.jar:8.5.31] at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650) [catalina.jar:8.5.31] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) [catalina.jar:8.5.31] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) [catalina.jar:8.5.31] at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803) [tomcat-coyote.jar:8.5.31] at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) [tomcat-coyote.jar:8.5.31] at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790) [tomcat-coyote.jar:8.5.31] at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1468) [tomcat-coyote.jar:8.5.31] at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) [tomcat-coyote.jar:8.5.31] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_151] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_151] at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [tomcat-util.jar:8.5.31] at java.lang.Thread.run(Thread.java:748) [na:1.8.0_151]
阿里云OSS Android伤处图片缓慢
我在使用阿里云OSS上传图片Android版的SDK,上传图片的时候发现图片上传速度很快,但是图片上传完成之后 OSS返回图片地址的时候特别慢,有没有人知道这是什么原因啊。下面是我上传图片的时候打印的Log: ![图片说明](https://img-ask.csdn.net/upload/201910/10/1570669971_769727.jpg) 上面图片的log中,在51秒的时候图片就上传完成了,但是直到59秒才返回图片的路径信息,我想知道这是怎么回事,麻烦了!
himall怎么配置oss,需详细的阿里云截图和himall代码配置截图
我用himall中的web.config的oss相关配置,结合阿里云的相关参数,配置了oss,oss自动上传了himall部分js文件,但上传图片,调式出现文件不存在,有没有大神配置成功过
项目中使用FTP的方式过慢,还经常出现421错误跟Software caused connection abort: socket write error错误,有些时候上传就特别的慢,有些时候就是飞速了
![图片说明](https://img-ask.csdn.net/upload/201911/30/1575082120_116111.jpg) 就像这图片中描述的一样,一直在等待状态,等路径返回的时候,通过访问图片就显示图片损坏,这问题困扰我太久了,有大神支招吗?从百度找的我都试过了,一直找不到合适的解决方案 ![图片说明](https://img-ask.csdn.net/upload/201912/04/1575428188_620666.jpg) 这是FTP代码,或者我想知道除了FTP,OSS之外还有什么方式可以上传文件至服务器?
springcloud feign 调用服务上传文件时出现问题
报错 There was an unexpected error (type=Internal Server Error, status=500). Type definition error: [simple type, class java.io.FileDescriptor]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class java.io.FileDescriptor and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: java.util.Collections$SingletonMap["file"]->org.springframework.web.multipart.support.StandardMultipartHttpServletRequest$StandardMultipartFile["inputStream"]->java.io.FileInputStream["fd"]) * feign.codec.EncodeException: Type definition error: [simple type, class java.io.FileDescriptor]; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class java.io.FileDescriptor and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: java.util.Collections$SingletonMap["file"]->org.springframework.web.multipart.support.StandardMultipartHttpServletRequest$StandardMultipartFile["inputStream"]->java.io.FileInputStream["fd"]) at feign.ReflectiveFeign$BuildEncodedTemplateFromArgs.resolve(ReflectiveFeign.java:376) at feign.ReflectiveFeign$BuildTemplateByResolvingArgs.create(ReflectiveFeign.java:224) at feign.SynchronousMethodHandler.invoke(SynchronousMethodHandler.java:74) at feign.ReflectiveFeign$FeignInvocationHandler.invoke(ReflectiveFeign.java:103) at com.sun.proxy.$Proxy195.upimagefile(Unknown Source) at com.xieyang.xyonlineeducationprovide.web.UserController.upheadimage(UserController.java:162) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at ``` ``` 服务端的代码 @Autowired private ossFileService oss; @RequestMapping("/upimagefile") public void upimagefile(@RequestPart MultipartFile file) { String upfile = oss.upfile(file); if(StringUtils.equals(upfile,"error")){ System.out.println("上传图片失败"); } else { System.out.println("成功上传图片"); } } ``` 客户端的代码 @FeignClient(value = "ALIYUNFILE",configuration=aliyunFileFeign.Myconfig.class ) public interface aliyunFileFeign { @Headers("Content-Type:multipart/form-data") @RequestMapping(value = "/upimagefile", produces = {MediaType.APPLICATION_JSON_UTF8_VALUE}) public void upimagefile(@RequestPart MultipartFile file); @Configuration public class Myconfig{ @Autowired private ObjectFactory<HttpMessageConverters> messageConverters; @Scope("prototype") @Primary @Bean public Encoder feignFormecoder(){ return new SpringFormEncoder(new SpringEncoder(messageConverters)); } @Bean public feign.Logger.Level multipartLoggerLevel(){ return Logger.Level.FULL; } } } ``` springboot为2.1.9 这是jackson的依赖版本 <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.10</version> </dependency>
阿里云服务器上有个images的文件夹,怎么快捷迁移到阿里云oss???
把images的文件夹整个迁移过去,images里面又有很多个小的文件夹都要一起过去,图片所存的位置要与原来一直。怎么传比较快
java 阿里云oss存储问题
最近项目需要把图片视频上传阿里云的oss,代码写完后测试,本地部署上传图片到oss完全没问题,但是部署到服务器上传图片页面就报504错误,oss我设置的timeout是50S,一张图片也就几十KB,不可能超时啊,所以我怀疑是其他什么原因,但是我想了一天,还是没个结果,所以在此求救大神帮助。。。。在线等
关于阿里云 OSS 上传 pdf 和 excel的问题
![图片说明](https://img-ask.csdn.net/upload/201806/29/1530245827_308503.jpg)问题是把pdf模板已经使用itext写好了,然后使用pdfWriter,getInstance给前端,但是前端说他们不好处理,最好给他们一个下连接, 所以想到阿里云的 OSS,想把pdf写好直接上传到阿里云,那么现在遇到的问题就是 pdfWriter.getOs() 返回的是 OutputStreamCounter 在转换成 ByteArrayOutputStream 的是偶出现转换异常 ;![图片说明](https://img-ask.csdn.net/upload/201806/29/1530245766_865394.jpg)
像github那样在线编辑代码文件的前端插件
### 我的需求: 远程服务器存储着大量配置文件,格式是properties ,我想在web端打开这种文件,并做编辑后保存工作。 ### 我的思路 每次保存后是一个新的文件,重新推送到OSS, 记录一个新的版本和路径到数据库。 ### 遇到问题 前端的插件问题,富文本编辑器我认为不行,带了许多格式,html自带的 textare,我看到最好的就是github那种代码,带语法格式, 还可以编辑修改。不知道这种是用的什么插件。 或者还有其它更好的方案不吝赐教,感激不尽! 新人,没有积分啊。。。。
springboot如何把图片上传到oss上,并把图片地址存到数据库中?
大神求解 :问题原因:我后台要求把图片存到阿里的OSS上,如何把图片的名称和地址存到数据表中,我的问题是在接收表单信息时,怎么上传到OSS上? 我后台的接口应该如何写?
oss链接的问题。。。。
oss里面存储一些视频,现在想点击链接播放视频,但是不知道oss里的视频怎么取出来,请大神帮忙
Ftp无法连接docker容器中的vsftpd
## 环境 1. centos 7.1805 1. vsftpd 3.0.2 1. docker 19.03.2 ftp服务器是运行在docker中的,基于centos:7的镜像,使用docker宿主机可以和vsftpd容器进行通信,可是,一使用其它网段的机器访问ftp服务器就不可以。 配置的是主动模式,已经关闭宿主的防火墙和selinux。 下面贴上vsftpd的配置文件 ``` anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 xferlog_enable=YES xferlog_std_format=YES xferlog_file=/ftp/log/xferlog connect_from_port_20=YES listen=YES pam_service_name=vsftpd //上面创建的PAM名称 userlist_enable=YES guest_enable=YES guest_username=nas port_enable=YES ``` 详细的报错内容看下图的抓包,如果有wireshark工具的同学,也可以下载[WireShark抓包数据][1],这是抓包的数据。 ![图片说明](https://img-ask.csdn.net/upload/201909/28/1569680259_376835.jpg) 自己第一次接触ftp,也百度、谷歌了下,可是网上说的都是在被动模式下,要么文件权限问题,要么seilnux没有默认放开ftp端口导致的,从wireshark的抓包,可以看到,报错的是Syntax error 500,感觉问题是出在,访问了docker的宿主机,然后端口映射到了容器的端口上,没有监听到导致的,可是不知道怎么配置。难道ftp就只能安装在物理机,无法放在代理服务器后面么? [1]:https://tony-public.oss-cn-hangzhou.aliyuncs.com/pic/201909282223ftp%E6%8A%93%E5%8C%85%E5%88%86%E6%9E%90.pcapng
Nginx配置404页面无效
主要的相关配置: ``` http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; # fastcgi_intercept_errors on | off; # 启用自定义错误页面 fastcgi_intercept_errors on; server { listen 80; server_name localhost; charset utf8; access_log logs/80-access.log main; error_log logs/80-error.log error; location / { root html; index index.html index.htm; } # 使用腾讯公益404页面 error_page 404 /404.html; location = /404.html { root html; } # error_page 404 = http://www.test.com/error.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } ``` 注:404.html和50x.html都在html文件夹下,404页面无效,还是默认的界面如下: ![file](http://bucket836.oss-cn-shenzhen.aliyuncs.com/image-1575883353106.png)
富文本通过UEditor-for-aliyun-OSS上传图片
根据官网的文本我修改了UEditor-for-aliyun-OSS里面的osskey的配置,但是得不到callbackName,所以在运行的过程中,总是报错,程序无法正常运行,该怎么搞
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
有哪些让程序员受益终生的建议
从业五年多,辗转两个大厂,出过书,创过业,从技术小白成长为基层管理,联合几个业内大牛回答下这个问题,希望能帮到大家,记得帮我点赞哦。 敲黑板!!!读了这篇文章,你将知道如何才能进大厂,如何实现财务自由,如何在工作中游刃有余,这篇文章很长,但绝对是精品,记得帮我点赞哦!!!! 一腔肺腑之言,能看进去多少,就看你自己了!!! 目录: 在校生篇: 为什么要尽量进大厂? 如何选择语言及方...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
redis分布式锁,面试官请随便问,我都会
文章有点长并且绕,先来个图片缓冲下! 前言 现在的业务场景越来越复杂,使用的架构也就越来越复杂,分布式、高并发已经是业务要求的常态。像腾讯系的不少服务,还有CDN优化、异地多备份等处理。 说到分布式,就必然涉及到分布式锁的概念,如何保证不同机器不同线程的分布式锁同步呢? 实现要点 互斥性,同一时刻,智能有一个客户端持有锁。 防止死锁发生,如果持有锁的客户端崩溃没有主动释放锁,也要保证锁可以正常释...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
YouTube排名第一的励志英文演讲《Dream(梦想)》
Idon’t know what that dream is that you have, I don't care how disappointing it might have been as you've been working toward that dream,but that dream that you’re holding in your mind, that it’s po...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Java世界最常用的工具类库
Apache Commons Apache Commons有很多子项目 Google Guava 参考博客
相关热词 c# clr dll c# 如何orm c# 固定大小的字符数组 c#框架设计 c# 删除数据库 c# 中文文字 图片转 c# 成员属性 接口 c#如何将程序封装 16进制负数转换 c# c#练手项目
立即提问