Skip to content

Instantly share code, notes, and snippets.

View jordic's full-sized avatar
🐛
python

Jordi Collell jordic

🐛
python
  • https://tmpo.io
  • Barcelona, ES
View GitHub Profile
@jordic
jordic / Almacenamiento_Sesiones_Django.md
Last active August 29, 2015 14:01
optimizando el almacenamiento de sesiones

Optimizando el Almacenamineto de sesiones

Estamos trabajando en una nueva aplicación, usando como no, nuestro lenguaje y framework favoritos (Python / Django). La aplicación es un B2B de logística y en el modelo de datos tenemos como base una empresa que cuenta con usuarios, que son los que operan.

En un primer momento, usamos las sesiones de Django, definimos el backend de estas contra cache (memcache), pero aún así, en cada petición, la aplicación realizaba la consulta de los datos del usuario y de la empresa. Ahorrabamos las consultas a la tabla sesiones, (backend de sesiones por defecto).

Pero aún podíamos ir un paso mas allá. Tanto los datos del usuario como los datos de la empresa, son más o menos estables, hay pocos cambios, con lo que eran objetos que debían de estar en caché. Así liberabamos mysql, para las consultas de las distintas vistas.

Indagando un poquito en los backends de autentificación, nos dimos cuenta, que el AuthenticationMiddleware, era el encargado de cargar los datos del

@jordic
jordic / linksandreads.md
Last active August 29, 2015 14:01
golang links and reads
### Convert tables from innodb to myisam
SELECT CONCAT('ALTER TABLE ',table_schema,'.',table_name,' engine=MyISAM;') FROM information_schema.tables WHERE engine = 'InnoDB' and table_schema = 'NOMBRE_DB';
package main
// based on gist
// https://gist.github.com/ir4y/11146415
// http://stackoverflow.com/questions/21417223/simple-ssh-port-forward-in-golang
import (
"code.google.com/p/go.crypto/ssh"
"code.google.com/p/gopass"
"fmt"
@jordic
jordic / jsonhandler.go
Last active August 29, 2015 14:02
Specialized middlewares
package main
import (
"encoding/json"
"github.com/bmizerany/pat"
"html/template"
"log"
"net/http"
)
@jordic
jordic / responsewriterwatcher.go
Created July 23, 2014 13:34
http.ResponseWriter embed
type ResponseWriterWatcher struct {
rw http.ResponseWriter
Status int
Size int
}
func WatchResponseWriter(rw http.ResponseWriter) *ResponseWriterWatcher {
return &ResponseWriterWatcher{
rw: rw,
@jordic
jordic / test.html
Created January 29, 2015 12:45
Fucking javascript prototype inheritance
<script>
c = function() {}
c.prototype.d = {}
a = new c()
b = new c()
a.d.test = 'a'
@jordic
jordic / file1.html
Created May 10, 2012 07:27
JS select dinamic
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"> </script>
<script>
$(document).ready(function(){
$('#menu').change(function(){
if( $(this).val() == "0")
@jordic
jordic / gist:3162079
Created July 23, 2012 05:30
Automatic ordering implementation in Django Models
###################################################
# #
# Default concrete implementations are below. #
# #
###################################################
class FormEntry(AbstractFormEntry):
form = models.ForeignKey("Form", related_name="entries")
@jordic
jordic / canvas_noise.html
Created August 11, 2012 20:09
HTML Noise Canvas
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Canvas Noise Sample</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"> </script>
<script type="text/javascript">
/*
Un pequeño ejemplo de como escribir bitmaps en un objeto canvas,
en este caso generamos un bitmap de ruido y lo escribimos en el canvas.
*/