`
conquer0
  • 浏览: 78403 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

cassandra外部使用示例一

阅读更多
package com.huawei.support.navigation.dao;
import java.io.Serializable;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;
import com.huawei.support.cache.ICassCache;
import com.huawei.support.cache.impl.CacheConfigReader;
import com.huawei.support.cache.impl.CassCache;
import com.huawei.support.exception.ApplicationException;

@Service("navigationDaoCache")
public class NavigationDaoCache
{
    private static Log sLog = LogFactory.getLog(CassCache.class);
    private final static String CACHE_FUNCTION = "support.navigation.navigationdaocache";
    private final static String NODE_DOC_LIST = ".node_doc_list";
    private final static String NAVIGATOIN_CACHE = "navigationCache";
    private boolean IS_USE_CACHE = true;
    private final static long CACHE_LIFE_CYCLE = 10 * 60 * 1000;

    @Autowired
    @Qualifier("navigationDao")
    private NavigationDao navigationDao;

    @Autowired
    @Qualifier("cassCache")
    private ICassCache cache;

    public NavigationDaoCache() throws ApplicationException
    {
        // 从配置文件中读取是否使用缓存的配置
        IS_USE_CACHE = Boolean.parseBoolean(CacheConfigReader.getInstance()
                .getPropertyFromBinding(NAVIGATOIN_CACHE));
    }
    /**
     * 清除缓存对象数据
     */
    public void clearCache() throws ApplicationException
    {
        try
        {
            Class c = this.getClass();
            Method[] methods = c.getMethods();
            for (int i = 0; i < methods.length; i++)
            {
                Method method = methods[i];
                String methodStr = methods[i].getName();
                if (method.getModifiers() == 1 && methodStr.startsWith("get"))
                {
                    String cacheAreaName = CACHE_FUNCTION + "." + methodStr;
                    cache.remove(cacheAreaName);
                }
            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
            throw new ApplicationException(" clearCache error", e);
        }
    }
分享到:
评论

相关推荐

    cassandra-trunk

    4. `conf`:配置文件,如`cassandra.yaml`,用于设置Cassandra实例的行为。 5. `lib`:依赖的外部库文件。 6. `doc`:项目文档,包括用户指南和技术参考。 7. `scripts`:启动、停止和管理Cassandra的脚本。 ...

    Real-time Analytics with Storm and Cassandra源码

    4. 集群部署与监控:可能包含Storm集群的配置和管理,以及Cassandra的集群扩展和监控工具的使用。 5. 故障恢复与容错机制:讲解Storm和Cassandra如何处理节点故障,保证服务连续性和数据一致性。 通过对这些源码的...

    learn-spark-cassandra:与 cassandra 示例对话的简单 Spark 集合

    每个示例都应该是可读的,外部引用最少。 它们应该按顺序阅读(并试用),因为它们是相互建立的。 例子 聚合并保存 演示简单的连接和聚合。 为开发环境硬编码,连接到本地主机。 数据迁移 这是使用 Spark 在 ...

    reflect-2.0.0.zip

    总的来说,Cassandra-Unit是一个强大的工具,它简化了在Junit测试中使用Cassandra的过程,提高了测试的质量和效率。通过深入理解其工作原理和使用方法,开发者能够更好地利用Cassandra进行高效、可靠的单元测试,...

    Apollon:Apollon嵌入式Cassandra

    1. **简单集成**:Apollon提供了一个简洁的API,使得Java开发者能够轻松地将Cassandra数据库集成到他们的应用中,无需关心底层的分布式系统细节。 2. **本地运行**:通过嵌入式模式,Apollon允许开发者在不启动独立...

    详解第二部分

    1. **客户端协议解析**:这部分处理Cassandra与外部客户端之间的通信。当前版本中,Cassandra支持Avro和Thrift两种客户端接口,通过Socket协议作为网络层通信标准,再在此基础上封装一层应用层协议。这一设计确保了...

    broker:Streamr Network的功能齐全的代理节点实现。 通过Apache Cassandra支持数据持久性,并支持MQTT,WebSockets和HTTP的外部协议

    使用Apache Cassandra支持数据的长期持久性。 目录 安装 先决条件是 14.x和npm版本&gt;=6.14 。 要安装流媒体经纪人: npm install streamr-broker --global 跑 将代理节点作为完整Streamr堆栈的一部分运行很方便。 ...

    Golang-REST-HTTP-API-example:使用Gosql(https)使用带有Cassandra数据库的标准库在Golang上编写的REST API应用程序示例

    REST API示例 服务具有配置文件,其中包含: 服务端口监听 Cassandra服务器的地址 键空间名称。 如果不存在这样的密钥空间,则应用程序将创建带有必要表的新密钥空间。 外部依存关系: : 日志将写入标准输出。 ...

    CassandraMonitor-源码.rar

    1. **源代码文件**:以.java为扩展名的文件,包含了Cassandra Monitor的实现,使用Java编程语言编写。这些文件通常按模块组织,如数据收集器、日志处理器、报警服务等。 2. **配置文件**:如cassandra.yaml或其他...

    springboot项目最详细示例

    1. **自动配置**:Spring Boot 的一大亮点就是自动配置。它根据项目中的依赖来自动配置 beans。例如,如果项目中有 JPA 的依赖,Spring Boot 将会自动配置数据源、JPA 实现(如 Hibernate)和相应的事务管理器。 2....

    spring boot 2.1.1代码示例

    1. **自动配置**:Spring Boot的核心特性之一是自动配置。基于`@SpringBootApplication`注解的类,框架会根据项目中的依赖自动配置Bean。例如,如果项目中有JDBC的依赖,那么Spring Boot会自动配置数据源和...

    mysql总结超详细

    - **1.4.2 多实例MySQL启动与关闭方法示例** - 对于每个实例,使用类似的方法启动服务。 - 关闭时,需指定具体的实例名称或端口号。 #### 1.5 生产环境关闭MySQL的命令 在生产环境中,应避免使用强制命令关闭...

    Nosql非关系型数据库-安装vmware、Cnetos7.0.pptx

    VMware是一款广泛使用的虚拟机软件,允许我们在一台物理机器上运行多个独立的操作系统实例。在VMware的官方网站(https://www.vmware.com/cn.html)上可以下载到适合您系统的最新版本。安装过程通常包括以下步骤: 1...

    spark sql介绍

    在Spark SQL 1.2版本中,一个重要的更新是引入了外部数据源API(External Data Source API)。这一API允许开发者定义新的输入源,极大地增强了Spark SQL处理不同格式数据的能力。以下是一些关键点: - **新特性**:...

    lagom-scala-sbt-standalone:构建Lagom Scala项目以在Lightbend Production Suite(aka ConductR)外部运行的基本示例

    Lagom-scala-sbt-standalone 构建一个Lagom项目(在Scala中)以在Lightbend Production Suite(aka ConductR)之外运行的基本示例。 它最初是从lagom-scala模板( sbt new lagom/lagom-scala.g8 )创建的,具有以下...

    datum:使用异步非阻塞IO构建流应用程序

    另一个示例是一个服务定期扫描远程hbase进行某些分析的情况。 由于服务之间相互依赖于彼此的数据存储,因此最终导致这些服务之间的紧密耦合。 如果您拥有主机服务,请考虑将数据从hbase移至cassandra hbase ,而...

    sparkrdd的讲解

    - **从外部存储系统创建**:可以利用`textFile`等方法从HDFS、Cassandra、HBase等外部存储系统创建RDD。 ```scala val rdd2 = sc.textFile("hdfs://node1.itcast.cn:9000/words.txt") ``` #### RDD编程API - **...

    sqoop2-1.99.7 documentation 英文文档

    - **1.1.6 初始化存储库**:Sqoop 使用一个外部存储库来存储作业和用户信息。 - **1.1.7 服务器生命周期管理**:了解如何启动、停止和管理 Sqoop 服务器。 - **1.2 客户端安装**:客户端可以安装在集群中的多个...

    SpringBoot核心学习文档

    - 使用Spring Boot Admin进行应用实例的远程监控。 12. **部署和运行**: - 打包SpringBoot应用为可执行的JAR或WAR文件。 - 在Docker容器中部署SpringBoot应用。 - 使用云平台如Heroku、AWS Elastic Beanstalk...

Global site tag (gtag.js) - Google Analytics