Three weeks ago I wrote about our quest for performance at the Socialist party. This week we had a follow up sprint and I want to thank you for all the comments on that blog.
During this sprint we have been looking into the direction of the amount of groups (+/- 2.700) and whether the amount of groups slowed down the system. We developed a script for deleting a set of groups from all database tables and we deleted around 2.400 groups from the system and we saw that this had an positive impact on the performance.
Before deleting the groups adding a new group took around 14 seconds. After removing 2.400 groups, adding a new group took around 3 seconds. So that gave us a direction in which we could look for a solution.
We also looked what would happened when we delete all contacts who have not a membership from the database and that also had a positive impact but not as huge...Read more
After the socialist party upgraded civicrm to version 4.6 a month ago they are experiencing performance issues. In this blog I will round up our quest for performance improvements. But before that some facts about their installation.
- +/- 350.000 contacts
- +/- 300 users who can access civicrm and see members in their local chapter
- +/- 2700 groups
- There are several campaign websites linked to CiviCRM and one of their successfully campaigns leads to 7500 new contacts per week in the system
- Running on a VPS with 4 CPU cores and 8GB of RAM
- around 40 active extensions
Since yesterday we have added New Relic as a monitoring tool. With New Relic we can monitor and look back in the history. We can also see all the details in each request. So we can analyze the performance.
Someone asked me to post this here - so that he can give it a try!
I've posted the details in a QA format including some of my slides from my CiviCON Lightning Talk on CiviCRM's StackExchange site:
Give it try!
Anyone who has tried to login to their CiviCRM database via their phone knows the feeling: utter helplessness. You would even be forgiven for thinking CiviCRM is actively hostile to the small screen.
This initial experience of the un-initiated CiviCRM user on the phone will probably remain until the eventual adoption of the Bootstrap framework (a CSS framework with built-in mobile/responsive elements).
What may be surprising to many, however, is that CiviCRM today is quite mobile friendly in all the important areas. You just have to put the pieces together.
After a long discussion on the Civi Partners list of the myriad ways CiviCRM developers have been integrating Boostrap into their projects, Allan Dixon started a page documenting them.
The Bootstrap page includes both the...Read more
This weekend the Skvare team attended TexasCamp, the first state-wide DrupalCamp! The Dallas conference attracted users and developers from all over the state to learn and network. Skvare showed community support with a Gold-level sponsorship. Since CiviCRM and Drupal work so well together, we shared some presentations that touched on the intersection of both.
Mark Hanna shared information on a new open-source online learning system powered by CiviCRM and Drupal. This week's release of Skvare's Tin Can compliant Learning Record Store is a Drupal-...Read more
Girls on the Run's mission is to inspire girls to be joyful, healthy and confident using a fun, experience-based curriculum. Teams are paired with coaches who teach valuable life skills over a 24-lesson curriculum that culminates with a 5K run at the end of each season. Every 5K event requires the registration and coordination of thousands of team coaches and over 800 volunteers. Also, as part of sharing their strengths with the community, each Girls on the Run team plans and implements a community service project, which allows them to discover the unimaginable strength that comes from helping others.
With so many volunteers and activities, Girls on the Run St. Louis had a few big questions to solve:
How could they migrate their data away from DonorPerfect, a CRM that was...
There are two powerful modules used in the Drupal world for creating fast custom searches. Search API is a framework which provides an interface for site builders to create custom searches on any entity known to Drupal. It supports several search backends, including Apache Solr and native database search. It has a flexible API so developers can easily extend, customize, and alter aspects of the search process. Many additional contrib modules are available. Using these techniques, searching millions of records becomes fast and efficient.
The Facet API module allows site builders to easily create and manage faceted search interfaces. In addition to the UI components that standard, themers and module developers can build their own widgets, or alter the...Read more
It's becoming a common request from our clients to find user-friendly ways to integrate CiviCRM data with the rest of their Drupal website functionality. Oftentimes content creators without direct user access to CiviCRM need to do simple things, such as create, update, and delete contacts in simple, specific ways.
Example Use Case
A hypothetical organization advertises various community service projects that they organize and coordinate. Each service project can have it's own page, created by adding a Project content type to display a description, images, videos, slideshows or other information for each project. You'll probably use a View to show multiple Project listings on a page. All that is standard Drupal site building content and functionality. No problem.
But what if the organization wants to display to the user the Project Coordinator(s), which they also want to store in...Read more
Hello everybody. I am assessing the feasibility of a CiviCRM integrated 'Community Shares' extension on behalf of my client, the Kindling Trust.
Community Shares are an investment mechanism available to Co-operative and Community Benefit Societies in the UK - see CommunityShares.org.uk if you want more info.
Kindling are a not for profit organisation based in Northern England, who have been using Civi for a number of years, and are planning on launching a community share offer in the future, in order to raise funds for a community owned farm, to develop sustainable food practices, and regional food security.
I anticipate that the new extension would build upon the existing CiviContribute and CiviMember components, and have attached an outline document describing how I would see it functioning.
We are interested in talking to members of the...Read more
CiviCRM Entity is a Drupal module which greatly enhances CiviCRM integration with Drupal. This module exposes many CiviCRM entities as true Drupal entities. That means that almost any module can use Drupal entities. As a result, these modules can access and manipulate CiviCRM data directly from within Drupal via Drupal’s Entity API. This includes many commonly used modules such as Views, Rules, Search API, Entityqueue, Entity Reference, and many more.
CiviCRM Entity was originally developed by Eileen McNaughton from Fuzion....Read more