explore sa node
1.0.0
| 掌握 | Heroku | |
|---|---|---|
| 测试 | ||
| 覆盖范围 |
该项目围绕解析各种数据集,包括英国政府有关房地产销售,警察报告数据和邮政编码数据的数据。目的是利用地理信息,以使用纬度和经度建立邮政编码之间的联系。
主要目的是开发可扩展的GraphQL后端,能够迅速提供所需的结果。这项工作试图照亮GraphQl使用的复杂方面,以解决诸如N+1问题之类的挑战和缩放场景,在这些方案中,编写和读取节点都需要多个数据库。
该项目的关键功能包括强大的自动质量保证(QA)系统,并结合了匿名数据播种,以进行全面的QA测试。该项目还探讨了JavaScript的灵活性,并突破了语言的界限。值得注意的是,它深入研究了默认V8对象字段的约束,该字段约为840万,同时突出了地图数据结构的出色处理能力。
此外,该项目还结合了一个队列系统,以提高数据处理的效率。从本质上讲,项目是对软件开发的各种和高级方面的实践证明,反映了对卓越和创新的承诺。
如果您使用make ,需要码头和码头组合,而npm的本地node.js是可选的
make “命令”无需进一步的步骤,否则您需要执行$ npm i$ make test或$ npm test$ npm test -- --coverage ,报告将位于./coverage目录中$ npm test src/graphql/user.test.js$ npm run sql db:migrate ,您还可以通过ORM npm run sql db:create$ npm run sql db:seed:all$ make或$ npm start$ make serve ,没有NPM同等学历$ make build或$ npm run build - 生成的资产将位于./ Build目录中make PORT=18081| 多变的 | 默认值 | 类型 | 描述 |
|---|---|---|---|
| 港口 | 8081 | 数字 | 应用程序可用的端口。 |
| ssl_key | 细绳 | SSL键的绝对路径(例如, /home/ubuntu/private.key private.key)。 | |
| ssl_cert | 细绳 | SSL证书的绝对路径(例如, /home/ubuntu/certificate.crt )。 | |
| *** | *** | *** | 如果指定了副本的配置,则仅将非复制连接用于写入。 |
| db_hostname | 127.0.0.1 | 细绳 | 可以到达数据库的主机。 |
| db_username | 根 | 细绳 | 连接到数据库的用户名。 |
| db_password | 密码 | 细绳 | 数据库用户的密码。 |
| db_port | 3306 | 数字 | 可以到达数据库的端口。 |
| db_name | 探索 | 细绳 | 数据库模式的名称。 |
| db_dialect | mysql | 细绳 | 数据库方言,MySQL / SQLITE / POSTGRE之一。 |
| db_replica_hostname | 127.0.0.1 | 细绳 | 用于仅阅读操作的数据库复制品的主机。 |
| db_replica_username | 根 | 细绳 | 连接到数据库复制品的用户名,用于仅阅读操作。 |
| db_replica_password | 密码 | 细绳 | 连接到数据库副本的用户的密码,用于仅阅读操作。 |
| NPM命令 | 对应的JS文件 |
|---|---|
parse:postcodes | src/parse:postcodes |
parse:postcodes:lsoa | src/parse:postcodes:lsoa |
parse:incidents | src/parse:markers:and:incidents |
parse:properties | src/parse:markers:and:properties |
parse:areas | src/parse:areas |
parse:timelines | src/parse:timelines |
示例: npm run parse:postcodes -- --file=/media/data/postcodes.csv
| 数据库 | 版本 | 适配器 | 主要目的 |
|---|---|---|---|
| mysql | 8 | mysql2 | 生产 |
| Postgresql | 11 | pg | 生产 |
| sqlite | 4 | sqlite3 | QA自动化和CI |
如果使用MySQL 5.7+,则需要确保它可以与MySQL本机密码一起使用
poStrgesql和sqlite得到了部分支持