小编JRi*_*dsz的帖子

我可以将哪个免费版本的 java 用于生产环境和/或商业目的?

当我在目前的工作中参与 dockerization 项目时,我有一个疑问:我可以使用哪种 java?

这种怀疑是由于:

java下载提示

所以经过一些研究,我得到了这些结论:

  • 2019 年 4 月 16 日 8u221的 java 8 更新以来,(java 8,9,10,11 y 13) 的所有版本和更新都没有成本,用于个人使用和开发目的。任何其他用途,需要商业许可证
  • 7 之前的旧版本没有也不会有任何更新。如果旧系统支持需要更新这些版本,那么销售联系人可能是一个解决方案。
  • 如果我想将 java 8 oracle 版本用于商业目的免费,我需要使用2019 年 4 月 16 日 8u221 更新的先前版本

问题

根据我的结论:

  • 如果我的开发严格需要或使用JDK 8开发,我是否可以仅将 Oracle Java SE 8 JDK 8u202 及更早版本用于免费商业目的接受问题和安全问题?

  • 如果我可以改变我的开发并且我仍然想要免费并且我想要改进和安全更新,我必须使用这些 Java 开放实现之一吗?


参考

java open-source azul-zulu corretto

57
推荐指数
4
解决办法
5万
查看次数

.change()获取:选中的文本值

我正在尝试运行以下代码

$("select#shipping_rates_drop").change(function(){
            var selectedText = $(this + "option:selected").text();
            var ship = thisvalue.split("£");
            var subtotal = $("ul#deliveryList").attr("class");
            var ship = ship[1];
            var totalcost = parseFloat(subtotal)+parseFloat(ship);
            $(".wrap.form-section h1 span").html("&nbsp;&nbsp;&nbsp;&nbsp;<small>Total </small> £"+totalcost);
            $("input[name=itemamt]").val(subtotal);
            $("input[name=shippingamt]").val(ship);
            checklistCheck1();
        });
Run Code Online (Sandbox Code Playgroud)

我希望在更改时从所选值中获取文本.恩.UPS全球快递 - £89.57然后代码拆分价值以获得实际的费用数.

但是console.log引发了以下情况

错误:语法错误,无法识别的表达式:[object HTMLSelectElement]选项:已选中

在jquery.min.js(第2行)

所以我假设我在这里做错了什么,并希望有人可以提供帮助

jquery selected

37
推荐指数
3
解决办法
7万
查看次数

如何在 DevOps 生命周期的开发阶段使用 docker?

我有几个关于在开发阶段使用 Docker 的问题。

运维

我将提出三种不同的场景,说明我认为 Docker 可以在开发环境中使用的方式。假设我们正在用 Java 和 Spring Boot 创建一个 REST API。为此,我需要一个 MySQL 数据库。

  1. 第一个场景是使用 docker-compose 使用 MySQL 容器进行开发,并使用另一个容器中的 MySQL 和 Java 应用程序 (jar) 进行生产 docker-compose。为了开发,我启动 docker-compose-dev.yml 以仅启动数据库。使用 IDE(例如 IntelliJ Idea)启动和调试应用程序。对代码所做的任何更改,IDE 将通过应用更改来识别并重新启动应用程序。

  2. 第二种情况是,对于开发和生产环境,都有一个带有数据库和应用程序容器的 docker-compose。这样,每次我对代码进行更改时,我都必须重建映像,以便将更改加载到映像中并再次启动容器。这种场景可能是最典型的,用于使用 Docker 进行开发,但由于每次发生更改时都需要重建映像,因此看起来很慢。

  3. 第三种情况是前两种情况的混合。两个 docker-compose。开发 docker-compose 包含两个容器,但具有允许实时重新加载应用程序、映射卷和使用例如 Spring Dev Tools 的机制。通过这种方式,启动容器,如果文件发生任何更改,应用程序容器将检测到更改并重新启动。对于生产,docker-compose 将简单地使用两个容器创建,但没有实时重新加载的功能。在我看来,这将是理想的情况,但我认为这非常依赖于所使用的技术,因为并非所有技术都允许实时重新加载。

问题如下。

  • 使用 Docker 进行阶段时,以下哪种场景最典型?

  • 场景1是否很好地提出?即仅dockerize 外部服务,如数据库、队列等,使用IDE 进行应用的开发和调试,不使用Docker。

我提出的疑问和场景是在我提出场景 2 的问题之后出现的。随着代码的每次更改,必须重新构建映像并再次启动容器是浪费大量时间。简而言之,一个问题是:如何避免这种情况?

在此先感谢您的时间。

注意这可能是一个受制于意见的问题,但很高兴知道开发人员通常如何处理这些问题。

development-environment hotdeploy livereload docker docker-compose

9
推荐指数
1
解决办法
1618
查看次数

为什么oracle存储过程的执行时间会因执行方式而大大增加?

这是我的问题:我们有一个称为的存储过程,HEAVY_SP并且根据其执行方式,执行时间会大大增加:

(1)通话执行

在Oracle SQL Developer IDE中直接执行

CALL HEAVY_SP(0, 'F', 5, ...)
Run Code Online (Sandbox Code Playgroud)

需要15秒(我们当前的解决方案)

(2)使用播放按钮

使用Oracle SQL Developer打开过程并执行“播放”按钮:

执行程序

需要15秒

(3) dbms_job:计划模式

需要15秒

(4) dbms_job:即时执行模式

需要超过1个小时

回顾数据处理方式,我们发现每次迭代都很慢。

(5)从SQL_PLUS(Linux)

耗时超过1小时,迭代速度非常慢

(6)从JAVA

耗时超过1小时,迭代速度非常慢

(7)从TOAD

耗时超过1小时,迭代速度非常慢

研究

我们已经吃了很多Google页面,例如:

为什么在存储过程中查询运行比在查询窗口中慢

oracle-pl-sql-procedure-runs比SQL慢

甲骨文在存储过程中插入的速度比手动插入要慢

通过Java相对于直接在数据库上运行,存储过程运行30慢一些

所以我的问题是:

  • 为什么Oracle采取这种方式?
  • 它不应该在所有情况下(相同的参数)都表现得很快吗?
  • 存储过程必须修改吗?
  • 如果查询计划,跟踪文件或统计信息显示不同的行为,则存储过程是否必须固定?
  • 为什么在查询窗口中执行速度很快?

提前致谢。


评论提示

提示1

遵循@BobJarvis关于统计的建议

结果:我们的统计数据是最新的。甚至,我们EXEC DBMS_STATS.GATHER_TABLE_STATS(ownname=>'SOME_USER', tabname=>'SOME_TABLE', cascade => TRUE);在所有问题表中重新执行,结果是相同的。


提示#2

遵循@KonstantinSorokin …

java oracle toad stored-procedures oracle-sqldeveloper

7
推荐指数
1
解决办法
1960
查看次数

如何在 ECR 中重新标记图像?

我正在尝试使用 AWS CLI 重新标记图像并开始怀疑本指南已过时。我将许多 Docker 映像推送到 ECR 存储库中 - 我们称其为“myappserver”。所以我可以运行这样的命令来查看 ECR 存储库中所有图像的列表:

aws ecr describe-images --repository-name myappserver
Run Code Online (Sandbox Code Playgroud)

我从该命令获得的输出如下所示:

{
    "imageDetails": [
        {
            "registryId": "123456789012",
            "repositoryName": "myappserver",
            "imageDigest": "sha256:1234...",
            "imageSizeInBytes": 33805114,
            "imagePushedAt": 1525881170.0
        },
        {
            "registryId": "123456789012",
            "repositoryName": "myappserver",
            "imageDigest": "sha256:1234...",
            "imageTags": [
                "latest"
            ],
            "imageSizeInBytes": 333805137,
            "imagePushedAt": 1525892193.0
        },
        ...
    ]
}
Run Code Online (Sandbox Code Playgroud)

因为并非我的所有图像都不再有标签,所以我想通过 imageDigest(而不是像指南那样使用 imageTag)来识别它们,这应该没问题。但是,指南提供的命令似乎不再起作用。它说:

使用 batch-get-image 命令获取要重新标记的图像的图像清单并将其写入环境变量。在此示例中,存储库 amazonlinux 中带有标签 latest 的映像的清单被写入环境变量 MANIFEST。

MANIFEST=$(aws ecr batch-get-image --repository-name amazonlinux --image-ids imageTag=latest --query images[].imageManifest --output text)

因此,很自然地,我尝试运行此命令:

aws ecr batch-get-image …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-ecs

5
推荐指数
1
解决办法
6718
查看次数

在 docker run 中发布 8080:80 和 8080:8080 有什么区别?

我正在尝试运行 jenkins 容器。我使用了“docker run --restart always --name myjenkins -p 8080:80 jenkins”,但无法在浏览器的http://localhost:8080上访问 jenkins 。如果我使用 docker run --restart always --name myjenkins -p 8080:8080 jenkins,我可以访问 jenkins url。

提前致谢

jenkins docker

4
推荐指数
2
解决办法
7790
查看次数

我应该使用哪个命令来缩小和优化 nodejs express 应用程序?

我准备好使用 Express-generator sccafold 网站,需要发布它。我应该使用哪个命令来缩小文件并针对发布进行优化?而且,我应该上传哪些目录?

deployment express web express-generator

4
推荐指数
1
解决办法
1242
查看次数

线性布局背景颜色

我试图将整个屏幕的背景改为白色.我通过将android:background ="#ffffff"属性添加到linerlayout来实现它.但它不起作用,我不知道我错过了什么?

http://developer.android.com/reference/android/widget/LinearLayout.html

xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:padding="10dip"
android:layout_width="fill_parent" android:layout_height="wrap_content"
**android:background="#ffffff"** >
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个程序,就像这个setContentView(R.layout.main); LinearLayout linLay =(LinearLayout)findViewById(R.layout.main);
linLay.setBackgroundColor(Color.WHITE);

但应用程序抛出错误

android android-widget android-layout

3
推荐指数
1
解决办法
3万
查看次数

Node.js https pem错误:错误:0906D06C:PEM例程:PEM_read_bio:无起始行

我从证书颁发机构获得了这些文件:

  • domain.com.p7b
  • domain.com.crt
  • domain.com.ca束

我尝试了这个小代码:

var express = require('express');
var app = express();
var fs = require("fs");
var https = require('https');

var privateKey = fs.readFileSync('domain.com.p7b').toString();
var certificate = fs.readFileSync('domain.com.crt').toString();
var ca_bundle = fs.readFileSync('domain.com.ca-bundle').toString();

var credentials = { key: privateKey, 
                    ca : ca_bundle,
                    cert: certificate};


https.createServer(credentials,app).listen(8080, function () {
    console.log('Example app listening on port 8080!');
});
Run Code Online (Sandbox Code Playgroud)

启动脚本后,我收到以下错误:

(err):     at Object.createSecureContext (_tls_common.js:87:19)
(err):     at Server (_tls_wrap.js:721:25)
(err):     at new Server (https.js:17:14)
(err):     at Object.exports.createServer (https.js:37:10)
(err):     at Object.<anonymous> (/utec_temp/https/web.js:27:7)
(err):     at Module._compile …
Run Code Online (Sandbox Code Playgroud)

ssl https ssl-certificate node.js express

3
推荐指数
1
解决办法
1万
查看次数

NGINX:使用域/路径在同一服务器上的多个节点js应用程序

问题

如果我有一些节点js应用程序,并且想将其发布为mydomain.com/app1、mydomain.com/app2等,则必须将app.get'/'更改 为app.get('/ app1',也可以在在某些情况下,css,js和图像路径。

要分配域/路径,是否应该始终修改应用程序?

有什么方法可以使应用程序独立吗?

是nodejs还是nginx配置?

这是一个用作示例的节点js应用程序:

https://github.com/jrichardsz/sensitive_web1.1/blob/master/server.js

这是mydomain.com的节点js应用程序的nginx配置(有效!)

server {
  listen 80;
  server_name mydomain.com;

  location / {
    proxy_pass http://localhost:8080/;
  }
}
Run Code Online (Sandbox Code Playgroud)

节点应用:

app.get('/', function(req, res) {
    // ejs render automatically looks in the views folder
    res.render('index');
});
Run Code Online (Sandbox Code Playgroud)

这是我针对同一节点js应用但mydomain.com/app1的 nginx配置(有效!)

server {
  listen 80;
  server_name mydomain.com;

  location /app1/ { 
    proxy_pass http://localhost:8080/app1/; 
  }
}
Run Code Online (Sandbox Code Playgroud)

这是Node js应用程序中的修复

app.get('/app1', function(req, res) {
    // ejs render automatically looks in the views folder
    res.render('index'); …
Run Code Online (Sandbox Code Playgroud)

nginx node.js

3
推荐指数
1
解决办法
2135
查看次数