小编Jon*_*ter的帖子

在 Dataflow 中使用自定义 docker 容器

通过此链接,我发现 Google Cloud Dataflow 为其工作人员使用 Docker 容器:Google Cloud Dataflow 实例的映像

我看到可以找出 docker 容器的图像名称。

但是,有没有办法获取这个 docker 容器(即我应该从哪个存储库获取它?),修改它,然后指示我的 Dataflow 作业使用这个新的 docker 容器?

我问的原因是我们需要在我们的 docker 上安装各种 C++ 和 Fortran 以及其他库代码,以便 Dataflow 作业可以调用它们,但是这些安装非常耗时,所以我们不想使用“资源”属性df 中的选项。

google-cloud-dataflow

8
推荐指数
1
解决办法
3718
查看次数

如何在Spring Security应用程序中列出*all*users和*all*权限

Q1)Spring Security中是否有一种方法(即类方法)允许您列出Sprint安全性用户和角色表中的所有用户和角色?(我不是只寻找登录用户;而且我不是只寻找给定用户的权限.我正在寻找所有用户和所有权限.)

Q1b)如果有办法,运行此查询的用户是否需要特殊权限?

(我可以通过编写查询用户和权限表的自己的SQL语句来解决这个问题,但这似乎是不必要的工作,容易出错,并打破了Spring Security API.)

如果有帮助,我的应用程序上下文设置是相当标准的:

<authentication-manager alias="myAuthenticationManager">
    <authentication-provider>
        <jdbc-user-service data-source-ref="dataSource"
            users-by-username-query="select username, password, enabled from users where users.username=?"
            authorities-by-username-query="select users.username,authority from users,authorities where users.username=authorities.username and users.username=?" />
    </authentication-provider>
</authentication-manager>
Run Code Online (Sandbox Code Playgroud)

<beans:bean id="dataSource"
    class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <beans:property name="driverClassName">
        <beans:value>com.mysql.jdbc.Driver</beans:value>
    </beans:property>
    <beans:property name="url">
        <beans:value>jdbc:mysql://XXXXX:XXXX/XXXXX</beans:value>
    </beans:property>
    <beans:property name="username">
        <beans:value>XXXXX</beans:value>
    </beans:property>
    <beans:property name="password">
        <beans:value>XXXXXX</beans:value>
    </beans:property>
</beans:bean>
Run Code Online (Sandbox Code Playgroud)

spring-security

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

如何在beam sdk 2.0中创建自定义Combine.PerKey

我们想出了如何在beam sdk 2.0中创建自定义组合函数(经过大量猜测和梁sdk 2.0代码读取之后),因为数据流sdk 1.x语法在sdk 2.0中不起作用.

但是,我们无法弄清楚如何在beam sdk 2.0中创建自定义组合PER KEY功能.任何帮助或指针(或更好的实际例子)将不胜感激.(我们搜索了互联网上的文档或示例,但没有发现;我们也试图查看beam sdk 2.0的Combine类中的代码,但无法弄清楚,特别是因为PerKey类现在有一个私有构造函数,所以我们不能再延长它了.)

如果它有帮助,这里是我们如何在beam sdk 2.0中正确创建自定义组合器(没有)键,但我们无法弄清楚如何使用键创建一个:

public class CombineTemplateIntervalsIntoBlocks
        extends Combine.AccumulatingCombineFn<ImmutableMySetOfIntervals, TemplateIntervalAccum, ArrayList<ImmutableMySetOfIntervals>>{


    public CombineTemplateIntervalsIntoBlocks() {
    }

    @Override
    public TemplateIntervalAccum createAccumulator() {
        return new TemplateIntervalAccum()
    }
Run Code Online (Sandbox Code Playgroud)

然后

public class TemplateIntervalAccum
        implements Combine.AccumulatingCombineFn.Accumulator<ImmutableMySetOfIntervals, TemplateIntervalAccum, ArrayList<ImmutableMySetOfIntervals>>, Serializable {
...
Run Code Online (Sandbox Code Playgroud)

google-cloud-dataflow

2
推荐指数
1
解决办法
979
查看次数

Vaadin 13网格中是否有一个“全选”复选框(即使在过滤条件下,甚至某些数据不在缓存中也可以使用?)

在Vaadin 13中,我为网格启用了“ multiselect”,效果很好。但是,通常,即使经过过滤,我也有数百个项目(因此选择每个项目将很乏味)。在我几年前使用的旧的旧gwt“网格”工具中,他们有一个复选框,该复选框将出现在顶部行/标题级别,如果选中,将对表中的所有行进行全选/取消全选(之后过滤)。Vaadin 13中是否存在这样的解决方案?如果不是,是否有任何(简单又安全)的解决方法来实现类似的目的?(注意:这可能比最初看起来要复杂一些,因为“全选/取消全选”复选框应该选择所有项目,即使它们没有显示或在后端缓存中也是如此。...应该选择所有记录都基于过滤条件...)

vaadin vaadin-grid

2
推荐指数
1
解决办法
190
查看次数

在Vaadin 14的Uploader中,如何清除之前上传的文件?

在 Vaadin 14 中,我使用 Vaadin Designer 添加了 Uploader 组件。效果很好。但是,我不知道如何清除以前上传的文件。我试过:

multiFileMemoryBuffer.getFiles().clear();
Run Code Online (Sandbox Code Playgroud)

但它没有做任何事情。当使用 Vaadin Designer 创建组件时,是否有办法清除 Vaadin 14 中的 Uploader 组件中先前上传的文件?

vaadin vaadin-flow

2
推荐指数
1
解决办法
296
查看次数

在考虑并行化外部流之前,是否会完全并行处理内部并行流?

从这个链接,我只是部分理解,至少在某些时候,java嵌套并行流存在问题.但是,我无法推断出以下问题的答案:

假设我有一个外部srtream和一个内部流,两者都使用并行流.事实证明,根据我的计算,如果内部流首先完全并行完成,那么它将更高效(由于数据位置,即L1/L2/L3 CPU缓存中的缓存)(如果且仅cpu核心可用)做外部流.我认为这对大多数人的情况都是如此.所以我的问题是:

Java会首先并行执行内部流,然后在outerstream上工作吗?如果是这样,它是在编译时还是在运行时做出决定?如果在运行时,JIT甚至足够聪明地意识到如果内部流确实具有比核心数量(32)更多的元素(例如数百个),那么它肯定应该使用所有32个内核来处理在从外部流移动下一个元素之前的内部流; 但是,如果元素的数量很小(例如<32),则可以"并行处理"来自"下一个"外部流的元素的元素.

java concurrency java-8 forkjoinpool java-stream

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

GC是否足够智能删除引用但不再使用的对象?

假设我有一个名为"master"的对象,它拥有100个对象,分别称为"slave0"到"slave99".(这不是一个数组.我的"master"类中有100个字段分别叫做salve0到slave99.)现在,假设我的程序首先读入一个包含序列化存储版本的"主"对象的文件.但是,假设我的程序从不使用slave50到slave99的对象.会发生什么?(我的猜测是java程序将首先读取所有100个从属对象作为读取/反序列化过程的一部分,并且只有在读取了所有100个从属对象之后,它才可能选择执行GC,此时对象slave50到slave99将被GC删除并回收内存.这是正确的吗?注意:对象"master"仍然在使用,所以从技术上讲,对象slave50到slave99仍然被父对象,master引用,而父对象master仍然是积极使用.)

后续问题

所以,让我说我的猜测在GC的运作方式上是正确的; 如果我长时间运行的程序花费几分钟处理对象slave0到slave50,然后进入另一个名为"X"的最终(长时间运行)过程,该过程只处理slave0到slave25的对象,那么会发生什么.然后GC会意识到即使对象slave25到slave50仍然被父对象主机引用,即使仍然使用对象主机,GC仍然足够聪明,可以通过slave50摆脱slave25,因为没有人是否会从"程序X"开始使用它?

java garbage-collection

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

如何在Vaadin 12中创建Web服务?

我正在考虑将Vaadin 12用于我的前端开发(我们主要是纯Java工程师,我想在大多数情况下将代码保存在Java中).但是,我们可能还需要支持Web服务.如果我们不使用Vaadin,我们只使用Jersey&DropWizard,创建Web服务很简单.

但是在Vaadin 12中,我可以用最少的额外代码/黑客创建web服务吗?(我在Vaadin 8中看到了如何这样做的例子,但是Vaadin 10和12与我读到的实质上有所不同.)特别是,有人可以指出我在Vaadin 12中如何做到的任何示例代码/示例?

(在相关的说明:这是一个"坏"的想法,我应该为我的一个或两个web服务实现一个单独的系统(在DropWizard中使用Jersey)?...我宁愿不必支持一个全新的服务器/ instance等只是为了一些web服务,当我99%的逻辑可能都在Vaadin系统中时.)

vaadin

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

使用Java在谷歌云存储上使用*签名的url*进行*可恢复的上传*

基于关于如何在 google-cloud-storage 中创建对象的文档(参见https://googleapis.github.io/google-cloud-java/google-cloud-clients/apidocs/index.html 中的“创建”方法),我们应该在尝试上传大文件时使用 blob.writer(...) 方法,因为它可能以某种方式自动处理可恢复的上传。这是正确的吗?

但是,如果我们希望在 SIGNED url 上进行可恢复的上传,那么在 Java 中如何实现呢?(非常感谢任何示例代码或指针;到目前为止,我的研究使我相信使用精心创建的 java 库是不可能的,而是需要使用“PUT”和“自定义构建自己的逻辑” POST”语句生成签名后的 url。这是迄今为止的“最佳”方式吗?)

google-api google-cloud-storage google-cloud-platform

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

Vaadin 12中的水平和垂直布局不响应

我的理解是Vaadin 10+的主要主题之一是响应式布局。因此,当“水平布局”和“垂直布局”似乎不支持响应式设计时,我感到惊讶。(我转为使用App Layout,这似乎可行。)但是,在我的App布局中,我倾向于使用Vertical Layouts和Horizo​​ntal Layouts放置聚合物组件-我想它们不会响应,因为我没有不要认为Vaadin的水平/垂直布局遵循响应主题。我们是否应该使用替代布局组件,或多或少地实现“响应式水平布局”等?

与此相关的是,假设所有预先构建的Vaadin 10/12 +聚合物组件(水平和垂直布局除外)都是自动响应的,例如网格,表格和标签,是否合理,例如,如果用户在他的电话上,正在寻找一个标签,该标签具有这些Vaadin组件可以在电话上“很好地”呈现(即遵循其他框架(如react.js等)的响应式布局)的形式?

vaadin vaadin10 vaadin-flow vaadin12

-2
推荐指数
1
解决办法
305
查看次数