小编Oli*_*nde的帖子

用于确定2个图是否是同构的算法

免责声明:我是图论的新手,我不确定这是否属于SO,Math SE等.

给定2个邻接矩阵A和B,我如何确定A和B是否是同构的.

例如,A和B不是同构的,C和D是同构的.

A = [ 0 1 0 0 1 1     B = [ 0 1 1 0 0 0
      1 0 1 0 0 1           1 0 1 1 0 0
      0 1 0 1 0 0           1 1 0 1 1 0
      0 0 1 0 1 0           0 1 1 0 0 1
      1 0 0 1 0 1           0 0 1 0 0 1
      1 1 0 0 1 0 ]         0 0 0 …
Run Code Online (Sandbox Code Playgroud)

language-agnostic algorithm graph-theory graph

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

我如何改进我的开发和部署策略?

我正在开发一个在LAMP堆栈(Linux Apache Mysql PHP)上运行的Web应用程序,并希望有关改进我的工作流程的建议.

我有3个环境:

  1. 我的本地机器AKA我的开发环境
  2. 我的专用服务器上的暂存帐户,以便我可以测试Web应用程序
  3. 我的专用服务器上的生产帐户

我在本地计算机上进行所有开发,并使用位于我的专用服务器上的subversion服务器.我设置了一个钩子脚本,这样每当我提交时,我的"登台"帐户都会使用新代码进行更新.

偶尔我会确保暂存帐户中的所有内容都能正常工作,并通过一个小脚本将更改推送到我的生产帐户.

这在大多数情况下运作良好,但有一些烦恼:

  • 我的域名在几个地方都是硬编码的,这使得在环境之间切换非常耗时.我可以手动修改我的主机文件,但它不是很快,它不适用于同一台服务器上的2个帐户(prod/staging).

  • 我无法在所有三种环境中使数据库保持最新状态.我可以在所有环境中使用相同的数据库,但我必须承担破坏生产环境的风险.

所以,我的问题是:我该怎么做才能缓解这些问题?

更新:硬编码域问题由第三方软件引入,因此,"不硬编码"目前不是一种选择.

svn lamp workflow

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

RSS和堆有什么区别?

在Node.js的上下文中,我经常遇到RSS内存的提及.关于RSS维基百科文章非常简洁,我仍然不确定它与堆内存的区别.它是堆+堆栈吗?有人可以解释一下,就像我5岁那样吗?

language-agnostic memory heap node.js

6
推荐指数
2
解决办法
2446
查看次数

我可以开始在我的智能手机应用中使用HTML 5吗?

大多数智能手机使用实现HTML 5(或至少部分)的现代浏览器引擎.我应该开始在我的Web应用程序中使用HTML 5吗?我在哪里可以找到大多数流行设备(iPhone,Android等)使用的浏览器引擎列表?我的应用程序不必在旧的桌面浏览器上工作.

iphone html5 android smartphone

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

为什么高级语言中缺少这么多数据结构?

为什么更高级别的语言(Javascript,PHP等)不提供链接列表,队列,二叉树等数据结构作为其标准库的一部分?是出于历史/实践/文化原因,还是有一些我缺失的基础知识.

language-agnostic programming-languages data-structures

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

尝试使用node.js导入gmail联系人

我正在尝试导入gmail联系人.我已成功获取access_token,但在尝试获取联系人浏览器时不断抛出错误.invalid_grant

我的代码如下.

用于身份验证和回调.

    authorize: function(req, res){
    var CLIENT_ID = '927112080821-vhsphqc79tb5ohfgpuvrp8uhh357mhad.apps.googleusercontent.com';
    var CLIENT_SECRET = 'gdgofL0RfAXX0in5JEiQiPW8';
    var SCOPE = 'https://www.google.com/m8/feeds';
        oa = new oauth.OAuth2(CLIENT_ID,
              CLIENT_SECRET,
              "https://accounts.google.com/o",
              "/oauth2/auth",
              "/oauth2/token");
    res.redirect(oa.getAuthorizeUrl({scope:SCOPE, response_type:'code', redirect_uri:'http://localhost:1234/callback'}));
  },
  callback: function(req, res){
    console.log(req.query.code);
    oa.getOAuthAccessToken(req.query.code, {grant_type:'authorization_code', redirect_uri:'http://localhost:1234/callback'}, function(err, access_token, refresh_token) {
    if (err) {
        res.end('error: ' + JSON.stringify(err));
    } else {
          getContactsFromGoogleApi(access_token);

        //res.write('access token: ' + access_token + '\n');
        //res.write('refresh token: ' + refresh_token);
        //res.end();
    }
    });

  },
Run Code Online (Sandbox Code Playgroud)

用于导入联系人

function getContactsFromGoogleApi (access_token, req, res, next) {
console.log('access_token ' + access_token); …
Run Code Online (Sandbox Code Playgroud)

api gmail google-api contacts node.js

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

在 AWS RDS 上更改 PostgreSQL 只读副本的密码是否安全?

在 AWS RDS 上更改 PostgreSQL 只读副本的密码是否安全?我想使用只读副本在我的笔记本电脑上下载数据库快照,但不想在那里拥有主数据库密码。

它目前与主数据库具有相同的密码,我只将它用于离线分析(例如,没有重要的事情使用它)。

postgresql amazon-web-services amazon-rds

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

避免 docker-compose.yml 配置之间的端口冲突?

我使用的是 Mac 版 Docker,并且在不同的存储库中有 3 个不同的“微服务”,它们都有自己的docker-compose.yml文件。这些服务本身不在 docker 中运行,但有一个docker-compose.yml文件用于启动每个服务使用的数据库(例如 postgresql、minio 和 redis)。这使我可以轻松地单独处理服务。

cd service1 && docker-compose up -d && cd service2 && docker-compose up -d但由于端口冲突,很难同时带2个服务。例如,如果 service1 启动 PostgreSQL 并将其公开到端口 5432,而 service2 想要执行相同的操作,则第二个docker-compose up命令将失败。

两个服务共享相同的 PosgtreSQL 容器是可以接受的,但我不确定是否可以告诉 docker-compose“使用 service1 中的数据库(如果可用),否则创建一个新容器”。

另一个解决方案是确保每个服务都有一个唯一的端口,但随着越来越多的 docker-compose 堆栈正在使用,这可能很难跟踪。

任何有关管理此类工作流程的建议将不胜感激。

如果有帮助,我的 docker-compose.yml 文件之一如下所示:

minio:
  image: minio/minio
  ports:
    - "9000:9000"
  volumes:
    - ./test/.minio/data:/export
    - ./test/.minio/config:/root/.minio
  environment:
    - "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE"
    - "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
    - "MINIO_ENABLE_FSMETA=true"

createbucket:
  image: garland/aws-cli-docker
  links:
    - minio
  command: >
    /bin/sh -c …
Run Code Online (Sandbox Code Playgroud)

docker docker-compose

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

Kubernetes:如何避免在多个部署中复制 env?

我有 4 个 Kubernetes/Helm 部署(web、emailworker、jobworker、sync),它们都需要共享完全相同的spec.template.spec.containers[].env密钥。env 键非常大,我想避免在每次部署中复制/粘贴它,例如:

# ...
env:
- name: NODE_ENV
  value: "{{ .Values.node_env }}"
- name: BASEURL
  value: "{{ .Values.base_url }}"
- name: REDIS_HOST
  valueFrom:
    secretKeyRef:
      name: secret-redis
      key: host
- name: KUE_PREFIX
  value: "{{ .Values.kue_prefix }}"
- name: DATABASE_NAME
  value: "{{ .Values.database_name }}"
- name: DATABASE_HOST
  valueFrom:
    secretKeyRef:
      name: secret-postgres
      key: host
- name: DATABASE_USER
  valueFrom:
    secretKeyRef:
      name: secret-postgres
      key: username
- name: DATABASE_PASSWORD
  valueFrom:
    secretKeyRef:
      name: secret-postgres
      key: password
- name: AWS_KEY
  valueFrom:
    secretKeyRef: …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-helm

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

Git:推送到远程存储库时更新网站?

每当我推送到远程存储库时,我都会想要更新一个网站.我来自一个svn背景,仍然试图找出git.

现在,我做了以下事情:

  • 在包含该网站的本地计算机上设置Git存储库.
  • 将(裸)存储库克隆到我的Web服务器.

现在我有点卡住了.我可以将更改推送到服务器上的裸存储库,但我不知道如何在我的www目录中检出存储库的工作副本,并在我将本地存储库推送到服务器时自动更新它.我可能需要一个钩子脚本吗?

相关问题,使用Git部署PHP,部分回答了我的问题,但我想知道脚本实际上在做什么.

git workflow

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