Skip to content

Instantly share code, notes, and snippets.

@totten
totten / civicrm-review-template-sublist-1.0.md
Last active October 25, 2017 21:02 — forked from seancolsen/civicrm-review-template-sublist-1.0.md
CiviCRM Review Template SUBLIST-1.0

Checklist

(Move each criterion that you evaluate into "Passing" or "Failing". Add comments describing any failures.)

  • Not evaluated
    • A JIRA ticket is mentioned (or not needed) (r-jira)
    • The automated tests pass (r-test)
    • The code looks good (r-code)
    • It works as advertised (r-run)
    • Users will be able to transition to this change easily (r-users)

Definitions

  • Data Parititioning
    • Unitary/Unpartitioned/Shared: All data from the different sites are mutually accessible.
    • Key-based Partition: The data for all sites are stored in the same DB/table/schema. However, there is a column (eg domain_id) to distinguish them.
    • Schema-based Partition: The data for all sites are stored in separate DB/table/schema.
  • Code Partitioning
    • Unitary/Unpartitioned/Shared: The same code is used for all the sites.
    • Partitioned: Each site has different code.
@totten
totten / front-bench.php
Last active January 23, 2019 21:27
Comparing performance of different front-caches
<?php
// Total number of times to take measurements.
$trialCount = 3;
// Number of items to write when filling the cache
$writeItems = 1000;
// Number of items to read from the cache.
$readItems = 200;
@totten
totten / quick-and-dirty-ci-intro.md
Last active June 13, 2019 18:39
Quick and Dirty Intro to Civi CI

Quick and Dirty Intro to Civi CI

Background

I find it easiest to consider the stack in three layers:

  • Host Environment or System Platform: Loosely, this is the collection of MySQL, Apache, PHP, NodeJS, and so on. These system-services and language-runtimes are provided in many distribution channels (e.g. Debian, Ubuntu, CentOS, RHEL, nix, MAMP, XAMPP, Bitnami, Docker, etc).