- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在尝试从 Cloud Run 中运行的 Java 应用程序连接到 Firebase 数据库。我的应用的 Firebase 事务的执行似乎有很多分钟的延迟(即使如此,我也没有得到所需的结果)。
当我的应用程序启动时,将调用以下方法:
public void init() throws Exception {
LOGGER.info("FirebaseRepo-init starting...");
FileInputStream serviceAccount =
new FileInputStream("/MyDatabase.json");
FirebaseOptions options = new FirebaseOptions.Builder()
.setCredentials(GoogleCredentials.fromStream(serviceAccount))
.setDatabaseUrl("https://mydatabase-222123.firebaseio.com")
.build();
LOGGER.info("FirebaseRepo-init 1");
fbApp = FirebaseApp.initializeApp(options);
LOGGER.info("FirebaseRepo-init 2");
dbRef = FirebaseDatabase.getInstance().getReference();
LOGGER.info("FirebaseRepo-init 3");
final DatabaseReference entityRef = dbRef.child("entities");
LOGGER.info("FirebaseRepo-init 4");
Entity e = testEntity();
entityRef.runTransaction(new Transaction.Handler() {
@Override
public void onComplete(DatabaseError error, boolean committed, DataSnapshot currentData) {
LOGGER.info("FirebaseRepo-init tx onComplete; com=" + committed + "; err=" + error);
}
@Override
public Result doTransaction(MutableData data) {
LOGGER.info("FirebaseRepo-init tx start");
MutableData childData = data.child(e.getGuid().toString());
if (childData != null) {
LOGGER.info("FirebaseRepo-init tx progress");
childData.setValue(e);
} else {
LOGGER.info("FirebaseRepo-init tx null child");
}
LOGGER.info("FirebaseRepo-init tx will return");
return Transaction.success(data);
}
});
LOGGER.info("...FirebaseRepo-init ending");
}
部署应用后检查日志,我们看到:
2020-03-30T01:51:40.318532ZINFO: FirebaseRepo-init starting...
2020-03-30T01:51:40.749160ZINFO: FirebaseRepo-init 1
2020-03-30T01:51:40.781135ZINFO: FirebaseRepo-init 2
2020-03-30T01:51:40.947959ZINFO: FirebaseRepo-init 3
2020-03-30T01:51:40.949045ZINFO: FirebaseRepo-init 4
2020-03-30T01:51:40.952295ZINFO: ...FirebaseRepo-init ending
2020-03-30T01:54:10.647748ZINFO: FirebaseRepo-init tx start
2020-03-30T01:54:10.945862ZINFO: FirebaseRepo-init tx progress
2020-03-30T01:54:12.546400ZINFO: FirebaseRepo-init tx will return
2020-03-30T01:56:03.046096ZINFO: FirebaseRepo-init tx start
2020-03-30T01:56:03.245789ZINFO: FirebaseRepo-init tx progress
2020-03-30T01:56:03.547215ZINFO: FirebaseRepo-init tx will return
2020-03-30T01:56:10.446070ZINFO: FirebaseRepo-init tx onComplete; com=true; err=null
该事务在应用程序启动后大约两分半钟被调用...然后大约五分钟后再次调用,最后完成。此外,当我转到 Firebase 仪表板时,我在数据库中看不到任何内容;尽管我没有看到任何错误报告,但没有添加任何内容。
对我所犯的 n00b 错误有什么想法吗?
最佳答案
考虑到问题中的评论,Cloud Run 似乎确实按预期工作,但是,Cloud Run 可能不是此特定用例的推荐产品。根据Doug的回答Cloud Run isn't meant to run arbitrary code on deployment. It's meant to run code in response to incoming HTTP requests as your run a web server on port 8080.
,这对于所面临的延迟来说是有意义的。可能值得检查其他产品。
关于java - 为什么我的 Cloud Run - 到 Firebase 调用需要这么长时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60923113/
我有一个独立的 Thread 应用程序。这是一个等待消息的监听器,当消息到达时执行一些操作,其中我必须将消息保存在数据库中。但我遇到了问题,因为如果我运行应用程序并“手动发送消息”,一切都会正常工作,
我有以下php代码: sleep(65); $query = "UPDATE database.table SET XXXXXXX = XXXXXXX - ".$YYYYYY." WHERE
我正在开发一个业余爱好应用程序。它在主布局中使用 webview。单击 webview 内的链接会使用户保持在 webview 内。启动后一切正常,但仍在应用程序内。但是,在手机休眠一段时间后,我重新
我目前运行的应用程序需要最大堆大小为 16GB。 目前我使用以下标志来处理垃圾回收。 -XX\:+UseParNewGC, -XX\:+UseConcMarkSweepGC, -XX:CMSIniti
$ uname -a Darwin Wheelie-Cyberman 10.8.0 Darwin Kernel Version 10.8.0: Tue Jun 7 16:33:36 PDT 2011
在 while 循环仍在休眠时退出它的最简单方法是什么?是否有某种函数可以在 sleep 时检测某个值是否为真? 或者我是否在循环中设置一个小 sleep 并检查如果不再睡一会儿就退出?如果可以,我该
我正在 Ubunu 的 Jetty 6 上运行 Java Web 服务器,用于基于反向 ajax 的 Web。而且我在向浏览器重新发送数据的线程滞后方面遇到了严重的问题。很多时候,一些线程开始 hib
当我运行长时间操作时,我遇到来自 IIS 的请求超时。我的 ASP.NET 应用程序正在后台处理数据,但处理的记录数量很大,因此操作需要很长时间。 但是,我认为 IIS 使 session 超时。这是
我不确定从哪里开始解决这个问题,但如果我有一个 AJAX 网络应用程序向服务器发送请求并在数据库(在我的例子中是 postgresql)上运行长查询,有没有办法停止或如果仍在运行时用户刷新页面或关闭
我是一名优秀的程序员,十分优秀!